2012-05-27 139 views
0

我想知道如果你能幫我解決難題。我是node.js的新手,希望得到一些幫助。node.js websocket服務器到html

我有一個簡單的HTML(客戶端)頁面使用jQuery和socket.io.js外部服務器。客戶端將事件發送到用作websocket服務器的nod​​e.js應用程序,並且如預期的那樣運行良好。

但是我對如何將寫入事件寫入node.js應用程序中比console.log更有用的東西感到無能爲力。

目前它不能簡單。

var io = require('socket.io').listen(8000); 

io.set('log level',1); 

io.sockets.on('connection', function (socket) { 
    socket.on('clientevent', function (message) { 
     console.log(message); 
    }); 
    socket.on('disconnect', function() { 
     console.log('disconnected'); 
    }); 
}); 

我希望能夠從node.js應用程序的client.html寫入一些HTML(DOM)的事件。我想用jquery的$('#event')。append(message)來做到這一點,也可以通過類似$('#someid')的方式與node.js服務器通信。點擊...

或者我是否完全錯誤?

回答

1

基本的例子是完美的。 Socket.io example with Jquery and DOM manipulation爲您提供了一個更詳細的使用Jquery和DOM操作的示例。您必須將client.html上傳到網絡服務器,從節點運行app.js,然後訪問client.html。

Socket.io監聽端口8000,並且客戶端已經配置爲在該端口訪問它。具體請參考使用Jquery的代碼DOM manipulation

希望這會有所幫助。

+0

謝謝你的回覆,我有點困惑。也許我很愚蠢。我能夠做到這一點client.html - > server.js。 我的問題是,我想做的事: client.html(基於Apache) - >(互聯網) - > server.js-> clientreplica.html 凡client.html是一個普通的服務器上, clientreplica.html與node.js位於同一臺服務器上。基本上我想把我從「互聯網」上的客戶端獲得的事件寫入動態html。 server.js基本上是一箇中繼。它有任何意義嗎? –

+0

哦,堅持下去。我只注意到了這個例子的廣播部分。這是否意味着可以有多個客戶端到同一個server.js應用程序? –

+1

Socket.io允許您發出和接收自定義事件。正如你在這個例子中看到的那樣廣播是一個特定的發射用例。廣播意味着向除啓動它的套接字以外的其他人發送消息。 – almypal