socket io连接在localhost中正常工作,但在heroku服务器上部署时却没有
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了socket io连接在localhost中正常工作,但在heroku服务器上部署时却没有相关的知识,希望对你有一定的参考价值。
当我在localhost上运行我的代码时,它工作正常,但在heroku上部署后显示错误(GET错误)这是我的代码
服务器端代码
app = express()
app.listen(app.get('port'), function() {
console.log('Node app is running on port..', app.get('port'));
});
var server = app.listen(4200);
var io = require('socket.io')(server);
io.on('connect',(socket)=>{
console.log('connected..........');
})
客户端代码
private socket = io('My-Heroku-server-address:4200');
错误
https:My-Heroku-server-address:4200/socket.io/?EIO=3&transport=polling&t=MDpJszb
答案
而不是像private socket = io('My-Heroku-server-address:4200');
那样在客户端代码中指定要连接的URL
var socket = io();
这将尝试连接到为页面提供服务的主机。
有关更多信息,请参阅Socket.IO。
另一答案
谢谢大家。
问题已经解决了。
我刚删除了端口号。
private socket = io('My-Heroku-server-address');
谢谢大家
以上是关于socket io连接在localhost中正常工作,但在heroku服务器上部署时却没有的主要内容,如果未能解决你的问题,请参考以下文章
在真实的服务器中运行socket.io服务器,而不是localhost?