我有一个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
});
答案 0 :(得分:1)
要使用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>