上周末我去了一个黑客马拉松,一个微软的招聘人员为我的Node.js项目安装了Azure。
我们在项目中使用了Socket.io,并且很难将客户端连接到服务器,因为我们不知道要连接哪个端口...
在我们的WebApp(非Azure VM)上,我们有以下代码:
var port = process.env.port || 3000;
在Socket.io的客户端,我必须指定一个ip地址以及它的端口。我试过了:
var socket = io('http://IP.AD.DRE.SSS:3000'); //And
var socket = io('http://IP.AD.DRE.SSS'); //And even a different Port
var socket = io('http://IP.AD.DRE.SSS:9999'); //And 443 and 80
每次迭代......我不得不做错事。我们最终切换到数字海洋,因为我知道如何使用它,但我真的想让它工作。
任何想法?
更新
我将其更改为80,我当前的错误是:“访问控制允许原点”。注意:我的客户端正在服务器上运行。
更新2:退回OP
不幸的是,Node的CORS包没有这个诀窍......
更多信息:
我没有使用Express或Connect。我的服务器在Azure上(作为Azure Web App)。我的客户端在Localhost上(感谢WebStorm)。
答案 0 :(得分:0)
Azure Web Apps仅侦听端口80& 443.将端口更改为其中任何一个,您的应用程序将正常工作。
答案 1 :(得分:0)
只需在客户端字符串中关闭端口即可。您可以单独使用URL进行连接。以我的代码I codefoster.com/commandmonkey为例。