簡體   English   中英

Socket.io 應用程序未部署到 Heroku

[英]Socket.io application is not getting deployed to Heroku

我已經使用 nodejs、socket.io 和 express 創建了一個基本的聊天服務器,我正在嘗試使用我的 git repo 從 heroku 部署它。 當我為我的應用程序打開 herokuapp 網站時( https://obnerd-chat-app.herokuapp.com/ ),它顯示如下內容:

在此處輸入圖片說明

這是我的 server.js 文件,它與 package.json 中的 main 鏈接:

//router for server
var express = require('express')
var app = express()
var server = require('http').Server(app);
var io = require('socket.io').listen(server)
server.listen(process.env.PORT);
//server.listen(80);
var users = {};
app.use('/app', express.static(__dirname + '/app'))
app.get('/', function(req, res){
  //serve our index.html
  res.sendFile(__dirname + '/app/index.html');
});
io.on('connection', function(socket){
  socket.on('new-user', function(user){
  users[socket.id] = user.name
  console.log(users[socket.id] + " connected");
  socket.broadcast.emit('user-connected', user)
  io.emit('user-online', 'There are currently '+Object.keys(users).length+' online')
})
  socket.on('disconnect', function(){
    console.log(users[socket.id] + " disconnected");
    socket.broadcast.emit('user-disconnected', users[socket.id])
    delete users[socket.id]
    io.emit('user-online', 'There are currently '+Object.keys(users).length+' online')
  })
})
 //divert again, emit message
 io.on('connection', function(socket){
  socket.on('chat message', function(msg){
    io.emit('chat message', msg);
  });
});

和 package.json

{
  "name": "live-chat-app",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "dependencies": {
    "express": "^4.15.2",
    "socket.io": "^2.3.0"
  },
  "devDependencies": {
    "node-static": "^0.7.11",
    "nodemon": "^2.0.2"
  },
  "scripts": {
    "start": "nodemon server.js"
  },
  "author": "",
  "license": "ISC"
}


請幫我解決這個問題,因為我對這些“部署”的東西不是很熟悉。

評論,答案表示贊賞。

好的,我知道錯誤是什么:

包 devDependencies 意外地包含了 nodemon,我的npm start命令是nodemon server.js所以因為 nodemon 被刪除了,我無法部署該應用程序。

通過將其更改為這樣來修復該問題: start : node server.js一切正常。

檢查我的聊天應用程序並給我一些改進的提示。 謝謝你。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM