gpt4 book ai didi

Javascript 定期发出 HTTP 请求不起作用

转载 作者:行者123 更新时间:2023-12-01 02:14:16 24 4
gpt4 key购买 nike

我有一个页面来显示聊天消息。我需要每 30 秒刷新一次聊天正文才能加载新消息。我已将间隔设置为 30 秒,该函数正在运行,但它没有发出 HTTP 请求。这是我的代码

function loadmessages(){

var ids = document.getElementById("pid").value;
var request = new XMLHttpRequest();
request.open("get", '/refresh_message/'+ ids );
request.setRequestHeader("Content-Type", "application/json;charset=UTF-8");
request.setRequestHeader("X-CSRF-TOKEN", document.querySelector('meta[name="csrf-token"]').content);
request.onload = function(){
if(this.status == 200){
var resp = JSON.parse(this.responseText);
console.log(resp.message);

}
else{
console.log(this.status);
}

request.send(null);
}


}

loadmessages();
setInterval(function(){
loadmessages()
}, 30000);

最佳答案

一致的缩进很重要。您将 request.send(null); 放入 request.onload 函数中,所以当然它永远不会首先被发送。尝试将其放在外面:

function loadmessages() {
var ids = document.getElementById("pid").value;
var request = new XMLHttpRequest();
request.open("get", '/refresh_message/' + ids);
request.setRequestHeader("Content-Type", "application/json;charset=UTF-8");
request.setRequestHeader("X-CSRF-TOKEN", document.querySelector('meta[name="csrf-token"]').content);
request.onload = function() {
if (this.status == 200) {
var resp = JSON.parse(this.responseText);
console.log(resp.message);
} else {
console.log(this.status);
}
}
request.send(null);
}

关于Javascript 定期发出 HTTP 请求不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49565060/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com