在Heroku上设置socketio的端口号

时间:2019-02-17 19:31:38

标签: javascript node.js express heroku socket.io

我正在尝试使用javascript和npm聊天。
由于在某种程度上已经完成,因此将其部署到heroku,并在chrome的开发人员工具中显示为net :: ERR_CONNECTION_REFUSED
我认为socketio,express和heroku是导致错误的原因。 该站点的URL在这里:
https://reax-chat.herokuapp.com/public/

该代码在这里。

const express = require('express')
const app = express()
const server = require('http').createServer(app)
const portNumber = process.env.PORT || 3005

server.listen(portNumber, () => {
  console.log('起動しました', 'http://localhost:' + portNumber)
})

app.use('/public', express.static('./public'))
app.get('/',(req,res) => {
  res.redirect(302, '/public')
})

const socketio = require('socket.io')
const io = socketio.listen(server)

io.on('connection',(socket) => {
  console.log('Acces to User:', socket.client.id)
  socket.on('chatMessage',(msg) => {
    console.log('message',msg)
    io.emit('chatMessage',msg)
  })
})

如何解决此错误? 谢谢。

1 个答案:

答案 0 :(得分:0)

您正在将请求发送到localhost,但是应该发送到您的Web URL。这就是您的chrome开发工具网络标签应该告诉您的内容。