【问题标题】:Signalr - Cannot connect to hub from child directorySignalr - 无法从子目录连接到集线器
【发布时间】:2017-10-18 09:24:11
【问题描述】:

我可以在 ASP .NET 应用程序中使用以下代码注册 SignalR 中间件:

public partial class Startup {
    public void Configuration(IAppBuilder app) {

        app.MapSignalR();

    }

}

我可以证明这是可行的,因为我可以访问用于自动生成的 JavaScript 文件的“/signalr/hubs” URL。

我可以使用

从位于根目录 ./Default.aspx 的页面连接到集线器
<!--Reference the SignalR library. -->
<script src="./Scripts/jquery.signalR-2.2.2.js"></script>

<!--Reference the autogenerated SignalR hub script. -->
<script src="./signalr/hubs"></script>

当我输入命令 $.connection.chatHub; 我得到 ​​p>

init {state: {…}, connection: h…n.fn.init, hubName: "chathub", _: {…}, 
client: {…}, …}
client
:
{}
connection
:
hubConnection.fn.init {url: "/signalr", qs: null, lastError: null, _: {…}, 
logging: false, …}
hubName
:
"chathub"
server
:
{connect: ƒ, sendPrivateMessage: ƒ}
state
:
{}
_
:
{callbackMap: {…}}
__proto__
:
Object

但是,我无法使用以下代码从位于子目录中的页面进行连接:

<script src="../Scripts/jquery.signalR-2.2.2.js"></script>

<!--Reference the autogenerated SignalR hub script. -->
<script src= "../signalr/hubs"></script>

当我尝试使用命令$.connection.chatHub; 连接到集线器时,出现错误:

Uncaught TypeError: Cannot read property 'chatHub' of undefined
at <anonymous>:1:14

我已经在 Google 和 stackoverflow 上搜索过类似的问题,但没有成功。

有人可以帮我解决这个问题吗?谢谢。

【问题讨论】:

    标签: c# asp.net signalr


    【解决方案1】:

    您可以尝试将 SignalR 集线器映射到位于“/signalr”的应用构建器管道。

    var hubConfiguration = new HubConfiguration();
    hubConfiguration.EnableDetailedErrors = true;
    app.MapSignalR(hubConfiguration);
    

    您可以尝试将其捆绑并渲染到您的视图中。

    BundleConfig.cs

    bundles.Add(new ScriptBundle("~/bundles/signalR").Include(
            "~/Scripts/jquery.signalR-{version}.min.js"
    ));
    

    在您看来:

    @Scripts.Render("~/bundles/signalR")
    <script src="~/signalr/hubs"></script>
    

    【讨论】:

      猜你喜欢
      • 2015-07-09
      • 1970-01-01
      • 1970-01-01
      • 2021-08-28
      • 1970-01-01
      • 1970-01-01
      • 2017-03-11
      • 2020-08-24
      • 1970-01-01
      相关资源
      最近更新 更多