WebSocket connection to 'ws://www.abc.com/socket.io/1/websocket/VKxqJC3PoXJ0DUbxgX8n' failed: Unexpected response code: 503
浏览器控制台显示上述socketio websocket连接失败的错误。
快递代码:-
server.listen(app.get('port'), function(){
console.log("Express server listening on port " + app.get('port'));
});
var io = require("socket.io").listen(server);
以上在本地主机上运行良好。
heroku 需要添加以下代码作为服务器的一部分。
io.configure(function () {
io.set("transports", ["xhr-polling"]);
io.set("polling duration", 10);
});
在我的例子中,我使用Java来开发websocket,只有我必须将此方法放入配置中
setAllowedOriginPatterns("*")
,配置是这样的:
@Override
public void registerStompEndpoints(StompEndpointRegistry registry) {
registry.addEndpoint("/ws").setAllowedOriginPatterns("*").withSockJS();
}
这让我成功连接到 websocket。