Kendo ui InvalidStateError-剑道UI上载
我总是遇到这样一个奇怪的错误,当我试图设置授权头时,我总是得到“InvalidStateError”。这是我的密码:Kendo ui InvalidStateError-剑道UI上载,kendo-ui,kendo-upload,Kendo Ui,Kendo Upload,我总是遇到这样一个奇怪的错误,当我试图设置授权头时,我总是得到“InvalidStateError”。这是我的密码: $("#files").kendoUpload({ async: { saveUrl: myApiUrl + "/" + id, autoUpload: true },
$("#files").kendoUpload({
async: {
saveUrl: myApiUrl + "/" + id,
autoUpload: true
},
upload: function(e) {
var xhr = e.XMLHttpRequest;
if (xhr) {
xhr.addEventListener("readystatechange", function onReady(e) {
if (xhr.readyState === 1 /* OPENED */) {
xhr.setRequestHeader("Authorization", "Bearer " + accessToken);
}
});
}
}
});
事实证明,IE出于某种原因为readyState==1触发了readystatechange两次。我不知道为什么,但确实如此。这是它第二次调用它,使它抛出错误。因此,我的解决方案如下: 在第一次调用它之后,我只是删除侦听器
$("#files").kendoUpload({
async: {
saveUrl: myApiUrl + "/" + id,
autoUpload: true
},
upload: function(e) {
var xhr = e.XMLHttpRequest;
if (xhr) {
xhr.addEventListener("readystatechange", function onReady(e) {
if (xhr.readyState === 1 /* OPENED */) {
xhr.setRequestHeader("Authorization", "Bearer " + accessToken);
xhr.removeEventListener("readystatechange", onReady);
}
});
}
}
});