简体   繁体   English

IIS 7.5上的SignalR始终对每个浏览器使用长轮询

[英]SignalR on IIS 7.5 always uses Long Polling with every Browser

I know SignalR has it's transport-method hierarchy: Websocket->Server-Sent Events->Forever Frame->Long Polling 我知道SignalR有它的传输方法层次结构:Websocket-> Server-Sent Events-> Forever Frame-> Long Polling

But when I check the console in every Browser, I noticed that the transport is always Long Polling. 但是当我在每个浏览器中检查控制台时,我注意到传输总是长轮询。

I'm using Windows 7, IIS Express 7.5 and Visual Studio 2013 (SignalR 2.0 of course). 我正在使用Windows 7,IIS Express 7.5和Visual Studio 2013(当然是SignalR 2.0)。

I know Websocket is only supported with IIS 8, but at least SSE or Forever Frame for IE should work. 我知道Websocket仅支持IIS 8,但至少SSE或Forever Frame for IE应该可以工作。

For example in Google Chrome I get this: 例如在谷歌浏览器中,我得到了这个: 在此输入图像描述

That means, Chrome is trying to use SSE right? 这意味着,Chrome正试图使用​​SSE吗? But why is it cancelled? 但为什么要取消呢?

And here a screenshot of Fiddler with Internet explorer: 这里是Fiddler与Internet Explorer的截图:

在此输入图像描述

It's blue... and the code is 200. (and why are there different ports? The site runs under port 4040, but where does 11437 come from?) There isn't even an explanation, why IE doesn't go on using SSE. 它是蓝色的......代码是200.(为什么有不同的端口?网站在端口4040下运行,但是11437来自哪里?)甚至没有解释,为什么IE不继续使用SSE。

I mean, SSE/Forever Frame does work with IIS 7.5, doesn't it? 我的意思是,SSE /永远框使用IIS 7.5的工作,不是吗?

Thank you in advance! 先感谢您!

PS: Before you ask, I am at home and not behind a proxy PS:在你问之前,我在家里而不是代理人

The SignalR requests to port 11437 are being made by Visual Studio's new Browser Link feature which can be disabled. 对Visual端口11437的SignalR请求是由Visual Studio的新浏览器链接功能制作的 ,可以禁用该功能

Can you show us your server-side code (particularly anything in OnConnected)? 你能告诉我们你的服务器端代码(尤其是OnConnected中的任何代码)吗? It would also be helpful to see the responses to the SSE and ForeverFrame /connect requests. 查看对SSE和ForeverFrame / connect请求的响应也很有帮助。

Lastly, looking at SignalR's server-side tracing could be helpful. 最后,查看SignalR的服务器端跟踪可能会有所帮助。

Well this is a bit late, but I want to resolve this anyway. 嗯,这有点晚了,但无论如何我想解决这个问题。

The reason was Bitdefender Internet Security 2013. It buffers requests or something like that, I don't know exactly :X 原因是Bitdefender Internet Security 2013.它缓冲请求或类似的东西,我不确切地知道:X

Anyways, I uninstalled it and that did the trick :D 无论如何,我卸载它,这就是诀窍:D

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM