我試圖創建一個node.js的聊天應用和socket.io與node.js的聊天應用程序,並socket.io
這是我app.js與地址腳本
var express = require('express'),
app = express(),
server = require('http').createServer(app),
io = require('socket.io').listen(server);
server.listen(3000);
app.get('/', function(req, res){
res.sendfile(__dirname + '/game.php');
});
io.sockets.on('connection', function(socket){
socket.on('send message', function(data){
io.sockets.emit('new message', data);
});
});
以.html一切正常
但是,當我把它改爲.PHP代替它開始頁面加載到下載它
在「localhost:3000」
我該如何改變才能使其工作?
如果您需要game.php代碼,請讓我發佈它。
UPDATE: 編輯這部分
app.get('/', function(req, res) {
res.setHeader('Content-Type', 'text/html');
res.sendfile(__dirname + '/game.php');
});
,現在它給了我
ReferenceError: text is not defined
at C:\Users\Mojtaba\Desktop\chat\app.js:9:33
at callbacks (C:\Users\Mojtaba\Desktop\chat\node_modules\express\lib\router\index.js:161:37)
at param (C:\Users\Mojtaba\Desktop\chat\node_modules\express\lib\router\index.js:135:11)
at pass (C:\Users\Mojtaba\Desktop\chat\node_modules\express\lib\router\index.js:142:5)
at Router._dispatch (C:\Users\Mojtaba\Desktop\chat\node_modules\express\lib\router\index.js:170:5)
at Object.router (C:\Users\Mojtaba\Desktop\chat\node_modules\express\lib\router\index.js:33:10)
at next (C:\Users\Mojtaba\Desktop\chat\node_modules\express\node_modules\connect\lib\proto.js:190:15)
at Object.expressInit [as handle] (C:\Users\Mojtaba\Desktop\chat\node_modules\express\lib\middleware.js:31:5)
at next (C:\Users\Mojtaba\Desktop\chat\node_modules\express\node_modules\connect\lib\proto.js:190:15)
at Object.query [as handle] (C:\Users\Mojtaba\Desktop\chat\node_modules\express\node_modules\connect\lib\middleware\query.js:44:5
你的'game.php'是一個真正的PHP腳本還是純粹的HTML? – Darkhogg
它包括php – Mojtaba
那麼這就是你的問題,你正在使用錯誤的工具。節點不知道如何讀取PHP。你的遊戲邏輯應該用JavaScript來實現。 – Darkhogg