我有这个:
var io = require('socket.io');
var port = process.env.port || 1337;
以后:
socket = io.listen(port)
然后开始:
socket.sockets.on('connection', ...)
我收到错误:
TyoeError:server.on不是socket.io/lib/manager.js:104上的函数
server.on('error, function(err) {
^
但如果我设置:
var port = 1337;
工作正常。我如何修复,以便与process.env.port一起使用?
答案 0 :(得分:2)
可能套接字库不希望端口是一个字符串(来自环境变量时它将是它)。
首先尝试将其转换为数字:
var port = Number(process.env.port) || 1337;