Herokuapp 无法部署,但在本地主机上运行良好:3000



我的第一个聊天应用程序有问题。当我在本地主机上运行时,它工作得很好。但是,当我将其部署到Herokuapp时,出现了一个错误:错误Herokuapp屏幕

这是我的脚本:app.js

var express = require('express')
var http = require('http')
var socketio = require('socket.io')
var app = express()
var http = http.createServer(app)
var io = socketio(http)
var path = require('path')
var config = {
port: process.env.PORT || 3000
}
app.get('/', function(req, res) {
res.sendFile(path.join(__dirname, "views/index.html"))
})
io.on('connection', function(socket) {
io.emit('join')
socket.on('disconnect', function() {
io.emit('leave')
})
socket.on('chat message', function(x) {
io.emit('post message', x)
})
})
app.use(express.static(__dirname + "/public"))
http.listen(config.port)

完整的文件结构:文件结构

顺便说一句,这是我无法理解的错误信息:

...
2020-11-07T03:29:47.092238+00:00 app[web.1]: internal/modules/cjs/loader.js:834
2020-11-07T03:29:47.092284+00:00 app[web.1]: throw err;
2020-11-07T03:29:47.092285+00:00 app[web.1]: ^
2020-11-07T03:29:47.092285+00:00 app[web.1]:
2020-11-07T03:29:47.092286+00:00 app[web.1]: Error: Cannot find module 'express'
...

如果您在终端上运行heroku日志,是否会出现mongoose openuri((错误?如果是这样的话,你必须在heroku上的应用程序设置中为你的环境变量(如PORT等(设置配置变量。

确保express模块包含在您的package.json文件中。这应该可以修复

相关内容

最新更新