【发布时间】:2015-08-23 04:25:46
【问题描述】:
我不知道为什么一个移到 IIS7 服务器的 node.js 应用程序现在失败了。我知道 IIS7 不支持 Web 套接字,但我的理解是,如果 Web 套接字不可用,socket.io 会退回到长轮询。因此,现在当用户尝试按下通常需要套接字或长轮询的特定按钮时,我会得到如下信息:
XHR finished loading: POST "https://localhost:817/socket.io/?EIO=2&transport=polling&t=1433777964357-6&sid=QWsESi0c9ih7WMWKAAAC".
GET https://localhost:817/socket.io/?EIO=2&transport=polling&t=1433777963494-5&sid=QWsESi0c9ih7WMWKAAAC 400 (Bad Request)
XHR finished loading: GET "https://localhost:817/socket.io/?EIO=2&transport=polling&t=1433777963494-5&sid=QWsESi0c9ih7WMWKAAAC".
OPTIONS https://localhost:817/socket.io/?EIO=2&transport=polling&t=1433777965127-7&sid=QWsESi0c9ih7WMWKAAAC
XMLHttpRequest cannot load https://localhost:817/socket.io/?EIO=2&transport=polling&t=1433777965127-7&sid=QWsESi0c9ih7WMWKAAAC. Invalid HTTP status code 400
当我单击 GET 或 XMLHttpRequest 时,我可以看到响应是 "code":1,"message":"Session ID unknown",我不明白,因为我可以看到 SID。当我单击为该选项列出的失败代码时,我看到问题来自 Request.prototype.create,即 xhr 发送:
xhr.send(this.data);
有谁知道是什么导致了这些事情?
任何澄清将不胜感激!
非常感谢!
【问题讨论】:
标签: javascript node.js sockets iis-7 long-polling