使用 socket.io 将数据从 nodejs 传输到 html
Transfer data from nodejs to html using socket.io
我正在尝试使用 socket.io 将数据从 nodejs 传输到 html。
首先,我尝试将文本从 nodejs 传输到 html 并且它有效:
nodejs 代码:
app.post('/timer', function(req, res){
res.sendFile(__dirname + '/public/status.html');
io.emit('messageFromServer', "text");
});
html代码:
<ul id="messagesList">
</ul>
<script src="/socket.io/socket.io.js"></script>
<script>
var socket = io();
var list = document.getElementById("messagesList");
socket.on('messageFromServer', function (data) {
var item = document.createElement('li');
item.innerHTML = data;
list.appendChild(item);
});
</script>
文本出现在 ul id="messagesList" AND /ul 之间。
现在我想将变量从 nodejs 传输到 html。该变量从 python 发出并且有效。但是我不能把这个变量写入html页面,我不知道为什么。
Nodejs 代码:信息是来自 python 的变量。
app.post('/timer', function(req, res){
res.sendFile(__dirname + '/public/status.html');
var info = req.body;
io.emit('messageFromServer', info);
console.log(info)
});
当我启动 python 代码时,console.log(info) 写入:{ time: '10' }
html代码(相同):
<ul id="messagesList">
</ul>
<script src="/socket.io/socket.io.js"></script>
<script>
var socket = io();
var list = document.getElementById("messagesList");
socket.on('messageFromServer', function (data) {
var item = document.createElement('li');
item.innerHTML = data;
list.appendChild(item);
});
</script>
当我启动 python 代码时,html 写入:[objet, Object],但我想要:“time 10”。
我该如何调整我的代码?
谢谢。
===============================
现在它适用于这些代码:
节点:
app.post('/timer', function(req, res){
res.sendFile(__dirname + '/public/status.html');
var info = req.body;
io.emit('messageFromServer', info);
console.log(info)
});
和html:
<ul id="messagesList">
</ul>
<script src="/socket.io/socket.io.js"></script>
<script>
var socket = io();
var list = document.getElementById("messagesList");
socket.on('messageFromServer', function (data) {
var item = document.createElement('li');
item.innerHTML = data.time;
list.appendChild(item);
});
</script>
谢谢你帮助我。
这也许可以解决您的问题。
item.innerHTML = data.time
我正在尝试使用 socket.io 将数据从 nodejs 传输到 html。 首先,我尝试将文本从 nodejs 传输到 html 并且它有效:
nodejs 代码:
app.post('/timer', function(req, res){
res.sendFile(__dirname + '/public/status.html');
io.emit('messageFromServer', "text");
});
html代码:
<ul id="messagesList">
</ul>
<script src="/socket.io/socket.io.js"></script>
<script>
var socket = io();
var list = document.getElementById("messagesList");
socket.on('messageFromServer', function (data) {
var item = document.createElement('li');
item.innerHTML = data;
list.appendChild(item);
});
</script>
文本出现在 ul id="messagesList" AND /ul 之间。
现在我想将变量从 nodejs 传输到 html。该变量从 python 发出并且有效。但是我不能把这个变量写入html页面,我不知道为什么。
Nodejs 代码:信息是来自 python 的变量。
app.post('/timer', function(req, res){
res.sendFile(__dirname + '/public/status.html');
var info = req.body;
io.emit('messageFromServer', info);
console.log(info)
});
当我启动 python 代码时,console.log(info) 写入:{ time: '10' }
html代码(相同):
<ul id="messagesList">
</ul>
<script src="/socket.io/socket.io.js"></script>
<script>
var socket = io();
var list = document.getElementById("messagesList");
socket.on('messageFromServer', function (data) {
var item = document.createElement('li');
item.innerHTML = data;
list.appendChild(item);
});
</script>
当我启动 python 代码时,html 写入:[objet, Object],但我想要:“time 10”。 我该如何调整我的代码? 谢谢。
===============================
现在它适用于这些代码: 节点:
app.post('/timer', function(req, res){
res.sendFile(__dirname + '/public/status.html');
var info = req.body;
io.emit('messageFromServer', info);
console.log(info)
});
和html:
<ul id="messagesList">
</ul>
<script src="/socket.io/socket.io.js"></script>
<script>
var socket = io();
var list = document.getElementById("messagesList");
socket.on('messageFromServer', function (data) {
var item = document.createElement('li');
item.innerHTML = data.time;
list.appendChild(item);
});
</script>
谢谢你帮助我。
这也许可以解决您的问题。
item.innerHTML = data.time