這樣一個愚蠢的問題,抱歉。所以我已經下載了node.js/sockets.io/express.js。試圖製作一個簡單的多人遊戲,但是從當前的Hello World開始。卡住sockets.io你好世界。不知道如何運行應用程序?
我有以下目錄結構:
-index.html
-server.js
-package.json
-node_modules/
的server.js具有下面的代碼:
var app = require('express');
var http = require('http');
var io = require('socket.io');
/*
var server = http.createServer(function(req,res){
res.writeHead(200, {'Content-Type': 'text/html'});
res.end('<h1>Hello world</h1>');
}).listen(80);
*/
var server = http.createServer(app);
server.listen(80);
var socket = io.listen(server);
var usersCount = 0;
socket.on('conection', function(client){
++usersCount;
console.log('client connecting... client# = ' + userCount);
client.emit('onMessageReceived',{msg:"You are client number: " + userCount});
});
我的客戶端代碼中的index.html,其內容是:
<html>
<head>
<title> Client Code </title>
<script src="/socket.io/socket.io.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"> </script>
</head>
<body>
<script>
$(document).ready(function(){
var socket = new io.Socket({'127.0.0.1',{port:80}});
socket.connect();
socket.on('connect', function(obj){
console.log('client connection successful..');
});
socket.on('onMessageReceived', function(data){
console.log("client has received message: " + data.msg);
});
});
</script>
</body>
和我的package.json包含:
{
"name": "hello_world",
"version": "0.0.0",
"description": "hello world test program",
"main": "server.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"repository": "",
"author": "",
"license": "BSD",
"dependencies":{
"express":"3.0.5",
"http": "",
"socket.io":""
}
}
現在,我不知道如何繼續運行的應用程序,如果我就算完了。任何關於如何繼續下一步的幫助。我現在猜測我需要不斷運行server.js,並讓多個客戶端打開index.html以連接到server.js。
結果看起來更好,我在瀏覽器中收到消息正文,說不能Get /。我想我需要聲明之前在教程中看到的get函數。我如何使用index.html連接到服務器? server.js正在監聽端口8080,所以我可以打開index.html並將其連接到服務器? – dchhetri
您使用快遞服務器呈現網頁'app.get('/',routes.index);'您也可以將其配置爲使用html,但作爲默認使用[jade](http:// jade- lang.com/)。我會研究[配置](http://expressjs.com/api.html#app.configure)你表達的應用程序,也許定義一個路線和視圖目錄來呈現網頁。 – Loourr