基本的に、学習体験のために node.js/express/socket.io を使用して単純な RTS ボード ゲームを作成しています。これまでのところ、それは非常にうまくいっています. nodejitsu にデプロイしてページをロードしましたが、サーバーは初期サーバー データをクライアントに送信していません。(ページが開いている間、更新なしで)サーバーをリセットすると、接続が確立され、すべてが期待どおりに機能しますが、サーバーにアクセスするクライアントはそれを行いません。
サーバー初期化コード:
var express = require('express');
var app = require('express')()
, server = require('http').createServer(app)
, io = require('socket.io').listen(server);
server.listen(8080);
app.use(express.static(__dirname + '/public'));
app.get('/', function(req, res){
res.sendfile("index.html");
});
app.get('/RTSwords', function(req, res){
//res.sendfile("public\\RTSwords.html");
res.sendfile("RTSwords.html");
});
サーバーの socket.io コード
// define interactions with client
io.sockets.on('connection', function(socket){
//send them board and first seven tiles.
socket.emit('serverNews', {'game': JSON.stringify(gameBoard), 'newTiles': randomTileString(7)});
クライアントの socket.io コード
var socket = io.connect('http://MYURLHERE');
.......
socket.on('serverNews', function(data){
update(data);
});
つまり、要約すると、ローカルで動作し、ページが読み込まれてサーバーが再起動されたときに動作します (私はそれを行うために「jistu deploy」を行っています) が、サーバーが実行されているときにページが読み込まれません。
どんな助けでも大歓迎です!
ありがとう、