我有一个QML页面(Qt Quick 2),它向外部服务器发出XHR请求。现在服务器正在我的本地机器上运行,并且第一次发出此请求需要约1.5秒。每个后续请求都在100ms以下。第一个XHR请求在QML中很慢(JavaScript在v8上运行)
当我使用浏览器做出同样的请求时,我每次都收到10ms以下的响应,所以我知道问题不存在。
这里是违规的代码。有任何想法吗?
function login(key) {
var xhr = new XMLHttpRequest();
var params = "Fob_num=" + key;
xhr.open("POST","http://localhost:9000/customer_login",true);
xhr.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
xhr.setRequestHeader("Content-length", params.length);
xhr.setRequestHeader("Connection", "close");
xhr.onreadystatechange = function() {
if (xhr.readyState == xhr.DONE) {
if (xhr.status == 200) {
handleResponse(xhr.responseText);
} else {
console.log("error with login--status: " + xhr.status)
displayErr("Oops, something's wrong. Please try again.")
}
}
}
xhr.send(params);
}
的问题不在于用handleResponse()函数,我已经尝试过了的console.log(“回应”)替换它,只是只要它仍然需要。我也尝试用我的ip替换localhost。
你检查过重定向吗?尝试“customer_login /”,创建xmlhttprequest oobject不应该采取这种持续时间。您可以通过记录x = new Date()。getTime();在状态变化的每个点上。也尝试xml响应。 – islahul
我也有这个问题; Flask服务器托管一个RESTful接口,content-type是application/json,而其他问题与OP相同。 –