我正在开发一个带有API api.example.com的网站example.com。目前,该网站及其API受BasicAuth的保护,使用用户名和密码。
我没有设法从网站到其API进行AJAX调用(我使用jQuery)。我尝试在网络上找到的所有内容都将BasicAuth参数添加到调用中,但没有任何效果。当我使用Chrome检查网络上发生的情况时,我发现没有提交标题,请求方法不是GET而是OPTIONS。
这是我尝试过的最后一件事:
$.ajax({
url: 'api.example.com/users.json',
beforeSend: function(xhr) {
var base64 = btoa(username + ":" + password);
xhr.setRequestHeader("Authorization", "Basic " + base64);
xhr.withCredentials = true;
},
success: function(data) {
users = data;
displayUsers();
}
});
你能帮我吗?
答案 0 :(得分:0)
我需要字段xhrFields
:
$.ajax({
url: 'api.example.com/users.json',
xhrFields: {
withCredentials: true
},
success: function(data) {
users = data;
displayUsers();
}
});