我建議使用Socket.IO
服務器端代碼
var io = require('socket.io').listen(80); // initiate socket.io server
io.sockets.on('connection', function (socket) {
socket.emit('news', { hello: 'world' }); // Send data to client
// wait for the event raised by the client
socket.on('my other event', function (data) {
console.log(data);
});
});
和客戶端
<script src="/socket.io/socket.io.js"></script>
<script>
var socket = io.connect('http://localhost'); // connec to server
socket.on('news', function (data) { // listen to news event raised by the server
console.log(data);
socket.emit('my other event', { my: 'data' }); // raise an event on the server
});
</script>
另外,您可以使用路由器功能,在特定的r上調用一些函數eQUEST的從使用JQuery
$.ajax({
type: 'get',
url: '/somepath',
success: function (data) {
// use data
}
})
據我所知(糾正我,如果我錯了)的客戶端
而且火
AJAX
要求,你不能直接調用從客戶端服務器上的方法。但是,您可以使用附加的方法名稱向服務器發送某種請求,然後服務器可以調用它。 – Supericy 2013-02-19 06:35:27@Supericy:謝謝你的迴應,但我不知道如何直接調用。你可以在代碼中解釋。 – user1629448 2013-02-19 06:38:03
您需要公開客戶端請求的端點。使用express.js,可能類似'app.get('/ some.name',function(req,res){// call code})''。然後,您可以通過客戶端上的AJAX調用來訪問該端點。 – jli 2013-02-19 06:46:55