使用Ajax调用在服务器上实时更新页面

Real-time page updating on server using an Ajax call

本文关键字:实时更新 服务器 Ajax 调用 使用      更新时间:2023-09-26

我有一个javascript客户端应用程序和express.js服务器。

我想用一些信息更新服务器中的页面,这些信息是我通过客户端应用程序的ajax调用发送的,我需要实时更新页面。

在我的javascript中:

var url = 'http://'+base_url+'/make-order';
    $.ajax({
        type: 'POST',
        url: url,
        data : {data : JSON.stringify(info)}
    }).done(function(res){
       //finished
    });

在我的快递路由器:

mobile_router.post('/make-order', function(req, res){
    // here i need to update some page in the server without rendering it
    // back to the client, res.end('updated') is enough 
});

要使用node.js开发实时应用程序,可以使用socket.io。socket.io网站上的示例代码:http://socket.io/docs/

服务器(app.js)

var app = require('express').createServer();
var io = require('socket.io')(app);
app.listen(80);
app.get('/', function (req, res) {
  res.sendfile(__dirname + '/index.html');
});
io.on('connection', function (socket) {
  socket.emit('news', { hello: 'world' });
  socket.on('my other event', function (data) {
    console.log(data);
  });
});

客户端(index.html)

<script src="/socket.io/socket.io.js"></script>
<script>
  var socket = io.connect('http://localhost');
  socket.on('news', function (data) {
    console.log(data);
    socket.emit('my other event', { my: 'data' });
  });
</script>