在azure Ubuntu vm上设置一个支持websocket的应用程序
好的,所以我在azure色的云中创build了一个ubuntu vm,我已经成功地启动了nodejs,redis,socket.io,Express和我正在编写的游戏的所有组件。
我已经在内部和外部端口8080上设置了azure色的端点,并在我的js代码中使用app.listen(8080)。
当我浏览到http:// <app-name> .cloudapp.net:8080 /我可以很好地查看我的nodejs应用程序的结果,它显示html,css等
但是,当它试图启动一个套接字连接(使用socket.io),我只得到这个(在我的Chrome开发控制台下的websockets):
HeadersPreviewResponseWebSocket Frames Request URL:ws://<app-name>.cloudapp.net:8080/socket.io/1/websocket/13510496541533398587 Request Method:GET Status Code:101 Switching Protocols Request Headersview source Connection:Upgrade Host:<app-name>.cloudapp.net:8080 Origin:http://<app-name>.cloudapp.net:8080 Sec-WebSocket-Extensions:x-webkit-deflate-frame Sec-WebSocket-Key:y5vueHE66phl70gle7KCtw== Sec-WebSocket-Version:13 Upgrade:websocket (Key3):00:00:00:00:00:00:00:00 Response Headersview source Connection:Upgrade Sec-WebSocket-Accept:dn+2lA6sMIXHLEmDS/Q4j/IIwxI= Upgrade:websocket (Challenge Response):00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00
当我尝试在客户端(浏览器)上使用socket.emit()发送任何东西时,它也会使azure上的nodejs应用程序崩溃。 在我的azure色ssh,它只是说'DEBUG:程序节点app.js退出代码为null'这不是特别有用。
所以显然不能正确连接? 我也尝试在我的nodejs侦听端口80,但是我甚至没有得到标准的网页(HTML,CSS等)。
从我在线阅读的内容来看,很有可能让套接字工作,让你不使用webangular色(我认为这个虚拟机不是)。
任何想法如何我能得到这个工作? (最好在端口80)?
编辑:开始怀疑这是否与套接字没有任何待办事项,意识到我得到了同样的交换协议消息,在我的家庭虚拟现实(在哪里工作)。 分离问题: 如何查看ubunu azure虚拟机上的nodejs程序的崩溃细节?
在Windows Azure负载均衡器上大约有60年的时间。
在websocket连接build立之后,如果你发送消息给客户端,它是否工作?
如果是这种情况,你将不得不实施一些保持每分钟发送一个现场信息。
- var azure = require('azure-storage'); 不工作
- 使用nodejs将数据从Rfid rc522发送到azureiot集线器
- 禁用Azure网站上的请求validation
- Microsoft Azure函数和节点 – 我是Mac用户。 如何在Azure Portal中上传/安装Node软件包?
- 护照会话不会在浏览器closures时被破坏
- Azure Web App WebJob不安装节点包
- 我如何将一个更快的语言与Express.js后端集成?
- 我可以在Microsoft Azure的Node.JS中使用本地“fs”文件系统吗?
- 设置根path以在Azure上提供index.html(IIS Web服务器)