我们正在使用ajaxSubmit处理项目上的媒体上传。这是我们正在做的精简版:
form.ajaxSubmit({
beforeSend: function(data) {
var auth = "Basic " + Base64.encode(username + ":" + password);
data.setRequestHeader("Authorization", auth);
},
complete: function(xhr) {
// Do other stuff
}
});
在其他浏览器中,这似乎完美无缺。例如,在Chrome的网络检查器中,我们可以看到授权标题为白天:
授权:基本MjAwMD ....等
在IE 9(和8,但我们真的不关心8 ...),情况并非如此。当我们运行请求时,标头中没有授权,我们只是由于缺少凭据而立即从服务器返回401错误(这反过来会弹出一个登录框给用户)。
根据我的阅读here,该插件应该回退到“较旧”浏览器中的iframe上传。我们知道在我们启用基本身份验证之前它在IE9中有效,但现在我们遇到了上面列出的问题。
我对这个领域不是很熟悉(如果你无法从我对这个问题的蜿蜒描述中说出来的话),那么任何有关正确方向的帮助或指示都将不胜感激。