小编Gab*_*zun的帖子

SignalR Core不生成(映射)客户端方法

SignalR Core正在生成Hub代理脚本,但不添加"客户端"方法.(服务器或客户端没有错误 - 只是不工作)

生成JS来自 <script src="http://localhost/signalr/hubs">

proxies['messageHub'] = this.createHubProxy('messageHub'); 
proxies['messageHub'].client = { };
proxies['messageHub'].server = {
        handleMessage: function (receivedString) {
            return proxies['messageHub'].invoke.apply(proxies['messageHub'], $.merge(["HandleMessage"], $.makeArray(arguments)));
         }
    };
Run Code Online (Sandbox Code Playgroud)

这是服务器端的Hub:

public class MessageHub : Hub
{
    public void HandleMessage(string receivedString)
    {
        var responseString = string.Empty;

        MessageHandler.HandleMessage(receivedString, ref responseString);

        Clients.All.sendMessage(responseString);

    }
}
Run Code Online (Sandbox Code Playgroud)

的sendMessage methos应包含在JS文件中messageHub客户端代理. $ .connection.messageHub.client.sendMessage未定义

仅创建了(并且正在工作)服务器代理的handleMessage.

这是SignalR的StartUp.cs包含:

ConfigureServices:

services.AddMvc(options =>
        {
            options.Filters.Add(new RoleFilterAttribute());
        }).AddJsonOptions(options => options.SerializerSettings.ContractResolver =
                new DefaultContractResolver());
services.AddSignalR(options => options.Hubs.EnableDetailedErrors = true)
Run Code Online (Sandbox Code Playgroud)

配置:

app.UseWebSockets();
app.UseSignalR();
Run Code Online (Sandbox Code Playgroud)

project.json: …

signalr asp.net-core

11
推荐指数
1
解决办法
606
查看次数

标签 统计

asp.net-core ×1

signalr ×1