相关疑难解决方法(0)

Websockets客户端API中的HTTP标头

看起来很容易使用任何支持此功能的HTTP头客户端向您的websocket客户端添加自定义HTTP标头,但我无法找到如何使用JSON API执行此操作.

然而,似乎应该在规范中支持这些标题.

任何人都知道如何实现它?

var ws = new WebSocket("ws://example.com/service");
Run Code Online (Sandbox Code Playgroud)

具体来说,我需要能够发送HTTP授权标头.

javascript header http websocket

170
推荐指数
10
解决办法
15万
查看次数

SignalR MVC 5 Websocket没有有效的凭据

我尝试在MVC应用程序中使用SignalR.它工作正常,但我在Chrome控制台中收到以下错误

 WebSocket connection to 'ws://localhost:18245/signalr/connect?transport=webSockets&clientProtocol=1.4&connectionToken=bNDGLnbSQThqY%2FSjo1bt
8%2FL45Xs22BDs2VcY8O7HIkJdDaUJ4ftIc54av%2BELjr27ekHUiTYWgFMfG6o7RaZwhf
fpXavzWQ1jvkaxGm5rI%2BWtK7j0g1eQC2aOYP366WmRQLXCiYJfsm4EbwX6T8n2Aw
%3D%3D&connectionData=%5B%7B%22name%22%3A%22importerhub%
22%7D%5D&tid=9' failed: HTTP Authentication failed; no valid credentials available 
Run Code Online (Sandbox Code Playgroud)

有趣的是,我通过Hub从Controller调用的jquery方法运行正常.

jQuery的:

 $(function () {
            // Initialize the connection to the server
            var importerHub = $.connection.importerHub;

            // Preparing a client side function
            // called sendMessage that will be called from the server side
            importerHub.client.sendMessage = function (message) {
                showOrUpdateSuccessMessage(message);
            };
            $.connection.hub.start();
        });
Run Code Online (Sandbox Code Playgroud)

控制器:

var hubContext = GlobalHost.ConnectionManager.GetHubContext<ImporterHub>();
            hubContext.Clients.All.sendMessage("All operations complete");
Run Code Online (Sandbox Code Playgroud)

我使用.Net v4.5.1,SignalR v2.1.2.0和IIS 8.5与Windows身份验证.

我该如何解决这个错误?

asp.net-mvc jquery controller signalr owin

30
推荐指数
1
解决办法
2万
查看次数

标签 统计

asp.net-mvc ×1

controller ×1

header ×1

http ×1

javascript ×1

jquery ×1

owin ×1

signalr ×1

websocket ×1