草庐IT

SignalR, No Connection with that ID,IIS

Roc.Lee 2023-04-09 原文

在 IIS 上启用 Websocket

在 Windows Server 2012 或更高版本上启用对 WebSocket 协议的支持:

 备注

使用 IIS Express 时无需执行这些步骤

  1. 通过“管理”菜单或“服务器管理器”中的链接使用“添加角色和功能”向导。
  2. 选择“基于角色或基于功能的安装”。 选择“下一步”。
  3. 选择适当的服务器(默认情况下选择本地服务器)。 选择“下一步”。
  4. 在“角色”树中展开“Web 服务器 (IIS)”、然后依次展开“Web 服务器”和“应用程序开发” 。
  5. 选择“WebSocket 协议”。 选择“下一步”。
  6. 如果无需其他功能,请选择“下一步”。
  7. 选择“安装” 。
  8. 安装完成后,选择“关闭”以退出向导。

https://learn.microsoft.com/zh-cn/aspnet/core/fundamentals/websockets?view=aspnetcore-6.0#iisiis-express-support-1

 

设置 Redis 底板以实现 ASP.NET Core SignalR 横向扩展

  • 在 SignalR 应用中,安装以下 NuGet 包:

    • Microsoft.AspNetCore.SignalR.StackExchangeRedis
  • 在 Startup.ConfigureServices 方法中,调用 AddStackExchangeRedis

    services.AddSignalR().AddStackExchangeRedis("<your_Redis_connection_string>");

https://learn.microsoft.com/zh-cn/aspnet/core/signalr/redis-backplane?view=aspnetcore-6.0

有关SignalR, No Connection with that ID,IIS的更多相关文章

  1. (附源码)vue3.0+.NET6实现聊天室(实时聊天SignalR) - 2

    参考文章搭建文章gitte源码在线体验可以注册两个号来测试演示图:一.整体介绍  介绍SignalR一种通讯模型Hub(中心模型,或者叫集线器模型),调用这个模型写好的方法,去发送消息。  内容有:    ①:Hub模型的方法介绍    ②:服务器端代码介绍    ③:前端vue3安装并调用后端方法    ④:聊天室样例整体流程:1、进入网站->调用连接SignalR的方法2、与好友发送消息->调用SignalR的自定义方法 前端通过,signalR内置方法.invoke()  去请求接口3、监听接受方法(渲染消息)通过new signalR.HubConnectionBuilder().on

  2. javascript - 如何让 SignalR 与 RequireJS 一起工作? - 2

    将SignalR与集线器一起使用时,您需要包含一个src为“/signalr/hubs”的脚本-即没有.js扩展名。当我尝试将其与RequireJS一起使用时,它坚持添加“.js”扩展名,这意味着永远不会加载集线器代理。有什么想法可以阻止它这样做吗? 最佳答案 为了他人的利益回答我自己的问题:我找到了RequireJS的“noext”插件here这解决了问题。如该页面所述,这与Issue18有关的RequireJS 关于javascript-如何让SignalR与RequireJS一起工

  3. javascript - SignalR - 多个集线器 - 单独启动连接 - 2

    我有一个SignalR应用程序,它有多个集线器(集线器是同一解决方案中不同项目的一部分)。在前端,我想根据用户当前正在查看的组件启动连接。假设我有2个集线器和2个组件:TestHub1、TestHub2;Component1,Component2.在每个组件中,我按如下方式实例化连接:vartestHub=$.connection.testHub;//defineclientmethods$.connection.hub.logging=true;$.connection.hub.start();});所以我在多个组件中执行此操作。现在,假设我将两个组件分别(同时)连接到TestHub

  4. javascript - 每个事件具有多个事件处理程序的 SignalR - 2

    在C#中,我会像这样将许多处理程序挂接到一个事件:event+=firstEventHandler;event+=secondEventHandler;但我们编写的带有SignalR的JavaScript:$.connection.someHubName.client.someEventName=function(item){console.log("someMessage",item);};我创建了一个看起来有点像这样的包装器:varsignalRClient={start:function(callback){$.connection.hub.url=ajaxHttp+"/sign

  5. javascript - 我在 signalr javascript 客户端中得到一个未定义的连接 ID - 2

    根据我遇到的所有文档,我应该能够在我的连接启动后调用$.connection.hub.id。这是我的代码:varhandshake=$.connection.handshakeHub;$.connection.hub.start().done(function(){console.dir($.connection.hub);console.log('connectionstartedwithid:'+$.connection.hub.id);self.parentConnectionId=document.cookie.replace(/(?:(?:^|.*;\s*)connectio

  6. c# - 使用 SignalR 发送 JSON - 2

    我想使用Signalr将对象从Javascript发送到服务器,但未调用服务器端方法。//Model-ClassgeneratedbyEF5.0publicpartialclassttFragen{...publiclongID{get;set;}publicNullableUserID{get;set;}publicstringTitel{get;set;}publicstringText{get;set;}publicNullableProductID{get;set;}publicNullableScore{get;set;}publicNullableDate{get;set;

  7. javascript - 如何跨域使用 SignalR - 2

    我正在尝试将SignalR与跨域一起使用,但在调用启动函数时收到错误消息。错误消息是"UncaughtTypeError:Cannotcallmethod'start'ofundefined"我正在使用代码服务器端:[assembly:OwinStartup(typeof(SignalRChat.Startup))]namespaceSignalRChat{publicclassStartup{publicvoidConfiguration(IAppBuilderapp){app.Map("/signalr",map=>{map.UseCors(CorsOptions.AllowAll

  8. javascript - 客户端函数未被调用 SignalR - 2

    定义Hub的Controller类publicabstractclassMonitoringProfileLogChartController:Croem.NotificationManager.Website.Base.BaseController.BaseController{publicActionResultIndex(){BusinessLogicReturnresult=newProcessBusinessLogic.Logic().GetRegisteredContexts();returnbase.TransalateToAction(result);}publicAc

  9. javascript - 在 IIS 中启用 JavaScript GZIP 压缩? - 2

    我们希望使用GZip压缩庞大的JavaScript文件,以加快我们网站的页面加载速度。我知道这可以通过IIS完成,但我似乎找不到关于如何实现它的简单分步指南。如果有人能指出这样的指南,我将不胜感激。我以前从未这样做过,所以它需要非常基础。我们在WindowsServer2008R2上运行IIS7.5。非常感谢您的宝贵时间。 最佳答案 事实证明这真的很简单:进入IIS管理器转到相关网站转到“压缩”(在IIS下)并双击它确保启用“启用静态压缩”。就这么简单!唯一的问题是动态生成的内容,但我对压缩内容不感兴趣,所以这就是我的答案。(不敢相

  10. javascript - 如何在客户端处理 SignalR 服务器异常? - 2

    错误处理程序在客户端是这样添加的:$.connection.hub.url="/signalr";$.connection.hub.logging=true;$.connection.hub.error(function(error){console.log('SignalrAdapter:'+error);});$.connection.hub.start().done(function(){me.onStartDone();});//...在服务器端是:hubConfiguration.EnableDetailedErrors=true;根据thedocs这应该足够了。在我抛出异常

随机推荐