【发布时间】:2016-08-22 21:21:22
【问题描述】:
我在 node js 中创建了一个 udp 客户端,它每 10 秒发送一个 udp 数据包。我想使用 ajax 来创建一个刷新按钮,当按下按钮时,客户端可以从 udp 获取最新消息。以下是我到目前为止所拥有的。任何帮助都会很好,如果这令人困惑,请告诉我
节点js
var PORT = 69;
var HOST = '192.168.0.136';
var dgram = require('dgram');
var message = new Buffer('10');
var client = dgram.createSocket('udp4');
setInterval(function() {
client.send(message, 0, message.length, PORT, HOST, function(err, bytes) {
if (err) throw err;
});
},10000);
client.on('message', function (message) {
var data= message.toString();
console.log(data);
app.get('/', function(req, res) {
//render index.ejs file
res.render('index', {val:data});
});
app.get('/ajax', function(req, res) {
res.send(data);
});
});
app.listen(3000, function(){
console.log('listening on *:3000');
});
html
<!DOCTYPE html>
<html>
<head>
<script src="http://code.jquery.com/jquery-1.11.0.min.js"></script>
<script src="/public/request.js"></script>
</head>
<body>
<h1>Val: <span id="val"><%=val%></span></h1>
<button id="loadRequest">Refresh</button>
</body>
</html>
js $(函数(){ $('#loadRequest').click(function() { $.get('/ajax', function(res) { $('#val').append(res); }); }); });
我现在可以获取当前消息,但是当我按刷新时,它不会更新为新消息。我知道我的错误可能在 ajax 请求中,但我不知道从哪里开始修复它。
【问题讨论】:
标签: javascript html ajax node.js udp