Как перезаписать и обновить данные с помощью веб-сокета в HTML
Я новичок в html и пытаюсь обновить свои данные, используя Websocket в html. Тем не менее, я застрял в обновлении моих данных без нажатия кнопки обновления с веб-сайта... Он загружается, когда я использую console.log (receive_msg) из веб-сокета, но не обновляет данные после одного раза. Как я могу перезаписать и постоянно обновлять данные? Я знаю, что это может быть действительно глупым вопросом. Должен ли я использовать цикл while или for для этого, или есть ли способы сделать это?
Вот часть моего кода в HTML
$.ajaxSetup({
async: false
});
var ws = new WebSocket("ws:'my websocket address'"); //just hide my websocket address
ws.onmessage = function (evt){
var received_msg = evt.data;
console.log(received_msg);
json_parsing = JSON.parse(received_msg); //updating just once and no updates after that.
$.each(json_parsing, function(key, val) {
listStats.push(val);
});
}
Кто-нибудь может помочь мне здесь? Спасибо!
1 ответ
Если вы хотите получить доступ json_parsing
переменная снаружи ws.onmessage
область действия функции, вам нужно объявить это глобально:
var json_parsing;
var ws = new WebSocket("ws:'my websocket address'");
ws.onmessage = function (evt){
var received_msg = evt.data;
json_parsing = JSON.parse(received_msg);
$.each(json_parsing, function(key, val) {
listStats.push(val);
});
}
затем json_parsing
будет доступен для всего документа.