我有一个SignalR集线器 - 像往常一样 - 在我的本地机器上正常工作在HTTP和& HTTPS。但是,当我将其移动到我们的服务器时,我无法再通过HTTPS从客户端调用集线器。 HTTP仍然像魅力一样。
示例:
//pseudo code...
var hub = getMyHub();
//this doesn't work on HTTPS. HTTP comes back just fine.
hub.invoke('loadMessages').done(applyUpdate);
//this works regardless of protocol
hub.on('messageInboxUpdate',applyUpdate);
所以基本上当你使用.invoke()调用集线器时,它在使用HTTPS时永远不会从服务器返回。如果你使用HTTP调用完全相同的代码,一切都很好。我在同一台服务器上测试了这个和HTTP& HTTPS。我已经验证在HTTPS上,请求实际上从未进入集线器C#代码。