javascript - 在 GET 调用中使用 isomorphic-fetch 时基本身份验证无法正常工作
问题描述
WWW-Authenticate:Basic realm="Realm"
在标头中正确传递身份验证参数,但它会在响应标头中转换为。
下面是我的 get api 调用代码片段。
doGetAuthRaceReplay (url) {
var param = this._doGetParam({ 'credentials': 'include',
'Accept': 'application/json',
'Content-Type': 'application/json',
'Authorization': "Basic " + window.btoa('uname+':'+password')});
return fetch(url, param)
}
_doGetParam (headers) {
var params = {
method: 'GET',
dataType: 'JSON',
headers: headers
};
return params;
}
调用 api 后出现错误 401。邮递员工作正常。
我也尝试过使用普通的 jquery ajax 调用,但仍然无法得到它。
var username = "uname";
var password = "pass";
var url = 'My url';
$.ajax({
url: url,
success: function(json) {
alert("Success", json);
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
alert(textStatus, errorThrown);
},
headers: {
'Access-Control-Allow-Origin' : '*',
'Authorization' : "Basic " + btoa(username+':'+password)}
'accept':'application/json'
},
type: 'GET',
contentType: 'json',
});
仍然收到 401 错误。
解决方案
推荐阅读
- javascript - 当文件托管在 http 服务器上时,IE 11 表单发布到新窗口不起作用
- python-3.x - 向表中添加可变数量的列
- javascript - 如何根据单选类型输入设置标签文本?
- java - 阻塞队列上实现的消费者何时停止监听消息
- javascript - Three.js:将纹理数组传递给shaderMaterial
- apache-kafka - Kafka Streams 持久存储错误:状态存储,可能已迁移到另一个实例
- python - python 无法识别 cx_Oracle
- android - 如何在不同的活动中保存和获取 SharedPreferences?
- java - 如何在给定的 this 中找到最大的模数
- ios - 如何根据另一个 var 检查数组的内容,通过 if 语句利用警报窗口?