Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js Azure上带有nodeJS的Websocket_Node.js_Sockets_Azure_Express_Websocket - Fatal编程技术网

Node.js Azure上带有nodeJS的Websocket

Node.js Azure上带有nodeJS的Websocket,node.js,sockets,azure,express,websocket,Node.js,Sockets,Azure,Express,Websocket,我设法使websocket在azure上的nodeJS+express应用程序上工作。 然而,它使用轮询而不是websocket,有人知道这是为什么吗? 这里是配置文件 客户端 socket=io.connect(url,{'transports':['websocket','polling']); 服务器端 我正在使用socket.io 1.3.6 编辑: 在Azure上,我启用了websocket和“始终打开”设置。 它也不是免费的软件包。好的。我还有一个托管在azure网站上的socket

我设法使websocket在azure上的nodeJS+express应用程序上工作。
然而,它使用轮询而不是websocket,有人知道这是为什么吗?
这里是配置文件

客户端
socket=io.connect(url,{'transports':['websocket','polling']);

服务器端 我正在使用socket.io 1.3.6

编辑: 在Azure上,我启用了websocket和“始终打开”设置。

它也不是免费的软件包。

好的。我还有一个托管在azure网站上的socketIO应用程序,web sockets确实可以按预期工作。您是否查看了本文

以下是重要的部分:

注意,我们在这个web.config中说“webSocket enabled=false” 令人困惑,但当你意识到我们说的是“禁用 IIS中的WebSocket并让下游节点(或任何人)处理它“


好的。我还有一个托管在azure网站上的socketIO应用程序,web套接字确实可以按预期工作。您是否签出了这篇文章

以下是重要的部分:

注意,我们在这个web.config中说“webSocket enabled=false” 令人困惑,但当你意识到我们说的是“禁用 IIS中的WebSocket并让下游节点(或任何人)处理它“


我最终将socket.io降级到1.3.5以使websockets在Azure(iisnode)上工作。

我最终将socket.io降级到1.3.5以使websockets在Azure(iisnode)上工作

azure是什么意思?VM、云服务还是azure网站?@LuisDelgado它是azure网站你是如何部署的?azure是什么意思?VM、云服务还是azure网站?@LuisDelgado它是azure网站你是如何部署的?是的,我已经看完了那篇文章。但是websocket仍然可以使用轮询。我现在已经设置了客户端设置到
socket=io.connect(url)
@fredtma您能确认您编辑的web.config正在上载到您的网站实例吗?我过去碰巧没有,我用Kudu.yes确认了这篇文章的内容。但是websocket仍然支持轮询。我现在已将客户端设置设置为
socket=io.connect(url)
@fredtma您能确认您编辑的web.config正在上载到您的网站实例吗?过去我碰巧没有,我使用Kudu确认了这一点。
app.set('port', process.env.PORT || 3000);

var server = app.listen(app.get('port'), function() {
  console.info('Express server started');
});

var io = require('socket.io').listen(server, {'transports': ['websocket', 'polling']});