Socket.io不能在节点服务器上工作
我正在运行一个服务器,它需要做的就是连接到第三方公共socket.iostream。 我有我的反应的应用程序工作,但不能让它在我的服务器上工作。 我使用节点和express.When我运行时,我没有得到任何的错误。 这是我的代码
var express = require("express"); var app = express(); var port = 3000; var io = require('socket.io-client/dist/socket.io'); var socket = io.connect('http://socket.coincap.io', {transports: ['websocket']}); socket.on('trades', function(tradeMsg) { console.log("worked"); }); app.listen(port, () => { console.log("Server listening on port " + port); });
刚刚检查了我的代码,我做了类似以下的代码。 不知道这是你的解决scheme,但也许可以帮助你。
在一个单独的socket-io.js
module.exports = function (app, server) { var socketIO = require('socket.io').listen(server, {'transports': ['websocket']}); global.socketIO = socketIO; socketIO.set('origins', '*:*'); socketIO.sockets.on('trades', function (tradeMsg) { console.log("worked"); }); };
然后在我的www
后var server = http.createServer(app);
我有:
require('socket-io')(app, server);
你可以尝试使用npm
来安装socket.io-client
。
npm install socket.io-client --save
并尝试运行下面的代码。 它应该工作正常。
var express = require("express"); var app = express(); var port = 3000; var socket = require('socket.io-client')('http://socket.coincap.io'); socket.on('trades', function(tradeMsg) { console.log("worked"); }); app.listen(port, () => { console.log("Server listening on port " + port); });