我在heroku端有一个node.js服务器,它在localhost上工作,但是当我提交给heroku时,应用程序崩溃。
'use strict';
const express = require('express');
const socketIO = require('socket.io');
const path = require('path');
const PORT = process.env.PORT || 3000;
const INDEX = path.join(__dirname, 'index.html');
const server = express()
.use((req, res) => res.sendFile(INDEX) )
.listen(PORT, () => console.log(`Listening on ${ PORT }`));
const io = socketIO(server);
io.on('connection', (socket) => {
console.log('Client connected');
socket.on('disconnect', () => console.log('Client disconnected'));
});
var app = express();
app.set('port', (process.env.PORT || 5000));
var bodyParser = require('body-parser')
app.use(bodyParser.json());
app.use(express.static(__dirname + '/public'))
app.post('/phpcallback', function(req, res) {
var content = req.body;
console.log('message received from php: ' + content.msg);
//to-do: forward the message to the connected nodes.
res.end(content.msg);
});
app.listen(app.get('port'), function() {
console.log("Node app is running at localhost:" + app.get('port'))
});
应用程序需要侦听来自PHP服务器的POST请求,然后在js客户端发送给用户,在本地主机上运行时代码运行良好,但当我提交并推送到heroku时,应用程序崩溃。有人知道问题出在哪里吗?我是node.js和www.example.com的新手socket.io
1条答案
按热度按时间nue99wik1#
尝试如下(改进的语法和一般用法)
我看到了您的
to-do
,如果您要将消息转发到所有连接的客户端socket.io:这可能会派上用场:SocketIO Emit CheatSheet