そこで、node.js、socket.io、kineticJSを使用してマルチプレイヤースペースシューティングゲームを作成しました。私のNode.jsサーバーは、実際にはクライアントのページを提供していません。クライアント側のファイルは現在、コンピューターのローカルApacheサーバーでホストされています。
現在、ノードサーバーはHerokuで稼働しており、クライアント側でsocket.ioをロードできないようです。「ioが定義されていません」というエラーが発生し続けます。これが私がスクリプトをインポートする方法です:
<script src="http://xxx-xxx-xxxx.herokuapp.com:5000/socket.io/socket.io.js"></script>
ここに示されている手順に従いました:https ://devcenter.heroku.com/articles/nodejs そして私のpackage.jsonファイルは次のようになります:
{
"name": "Grid-Frontier",
"version": "0.0.1",
"dependencies": {
"socket.io": "0.9.x"
},
"engines": {
"node": "0.6.x"
}
}
ローカルホストではすべてが正常で、次のことができます。
// Importing on client side
<script src="http://localhost:8080/socket.io/socket.io.js"></script>
// Server-side
server.listen(8080);
socket = io.listen(server);