【发布时间】:2017-12-11 04:46:29
【问题描述】:
请帮忙!我正在用 Node/Express 和 Heroku 上的 React 创建一个网站。 Server.js 在客户端提供一个 expresshandlebar 模板,渲染 App.js
到目前为止一切正常,直到我尝试实现 Socket.IO。 Socket.IO 在 localhost 上完美运行,但在 Heroku 上出现错误:
VM63:35 WebSocket 连接到“ws://mysite:8080/socket.io-client/?EIO=3&transport=websocket”失败:WebSocket 握手期间出错:net::ERR_CONNECTION_RESET
以下是代码的相关部分:
Server.js
var express = require('express'),
var port = process.env.PORT || 8080;
var httpServer = require('http').createServer(app);
httpServer.listen(port)
io.on('connection', function (socket) {
console.log('Connection started');});
App.js
var io = require('socket.io-client');
var new_socket = io.connect();
我已经阅读了许多网站,并尝试了许多替代方案,例如: 1) 在客户端和服务器 socket.io 'path' 和 'transsports' 上设置
path: '/socket.io-client'
transports: ['websocket']
2) 按照 Heroku 的推荐尝试 WebSockets。这会引发另一个错误“错误 503”
【问题讨论】:
标签: node.js reactjs heroku socket.io