协商请求过程中出现SignalR&Quot;错误 [英] SignalR "Error during negotiation request"

查看:8
本文介绍了协商请求过程中出现SignalR&Quot;错误的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我的应用程序中有套接字通知,当我在本地运行时,它工作得很好,但当我部署到我的VM时,它抱怨给出以下消息。

Error: Error during negotiation request.
    at Object.signalR._.error (jquery.signalR.js:178)
    at signalR.fn.signalR.start.onFailed (jquery.signalR.js:644)
    at Object.signalR.fn.signalR.start.connection._.negotiateRequest.signalR.transports._logic.ajax.error (jquery.signalR.js:664)
    at n.Callbacks.j (jquery.js:3094)
    at Object.n.Callbacks.k.fireWith [as rejectWith] (jquery.js:3206)
    at x (jquery.js:8261)
    at XMLHttpRequest.n.ajaxTransport.k.cors.a.crossDomain.send.b (jquery.js:8600)

它是跨域的,但我相信我已经解决了CORS问题,但我可能是错的。

编辑

这是我知道将被询问的其他信息。

请求:

GET http://path.to.my.vm/api/notifications/emmit/negotiate?clientProtocol=1.5&connectionData=%5B%7B%22name%22%3A%22testemitter%22%7D%5D&_=1432140840826 HTTP/1.1
Host: path.to.my.vm
Connection: keep-alive
Accept: text/plain, */*; q=0.01
Origin: http://localhost:8100
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.152 Safari/537.36
Content-Type: application/x-www-form-urlencoded; charset=UTF-8
Referer: http://localhost:8100/
Accept-Encoding: gzip, deflate, sdch
Accept-Language: en,fr;q=0.8,en-US;q=0.6

响应:

HTTP/1.1 500 Internal Server Error
Date: Wed, 20 May 2015 17:01:18 GMT
Server: Mono-HTTPAPI/1.0
Access-Control-Allow-Origin: *
Access-Control-Allow-Methods: POST, GET, OPTIONS, DELETE, PUT
Access-Control-Max-Age: 1000
Access-Control-Allow-Headers: x-requested-with, Content-Type, origin,authorization, accept, client-security-token
Content-Length: 0
Connection: close

编辑

已在服务器上设置CORS支持。

app.UseCors(CorsOptions.AllowAll);
app.MapSignalR("",new HubConfiguration()
    {
        EnableJavaScriptProxies = true
    });

推荐答案

此外,请确保您的SignalR主机上已启用WebSocket。如果是Windows PC,请检查是否在控制面板->程序->打开或关闭Windows功能中启用了WebSockets。

如果是Windows服务器,Microsoft会提供如何启用WebSockets的逐步说明http://www.iis.net/learn/get-started/whats-new-in-iis-8/iis-80-websocket-protocol-support

我在SignalR配置中设置了CORS,但仍然收到相同的错误,事实证明这是我的问题。希望能有所帮助!

这篇关于协商请求过程中出现SignalR&Quot;错误的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆