Angularjs $http Get请求中的基本身份验证
我正在尝试使用基本身份验证访问REST API服务 这非常适合作为卷曲请求:Angularjs $http Get请求中的基本身份验证,angularjs,angularjs-http,request-headers,Angularjs,Angularjs Http,Request Headers,我正在尝试使用基本身份验证访问REST API服务 这非常适合作为卷曲请求: curl -D- -X GET -H "Authorization: Basic eW**********0NQ==" -H "Content-Type: application/json" "https://api.domain.com/api/users/email/first.last@domain.com" 在angular中,我尝试了这个,但它似乎不起作用,因为我得到了一个501错误 var _url =
curl -D- -X GET -H "Authorization: Basic eW**********0NQ==" -H "Content-Type: application/json" "https://api.domain.com/api/users/email/first.last@domain.com"
在angular中,我尝试了这个,但它似乎不起作用,因为我得到了一个501
错误
var _url = "https://api.domain.com/api/users/email/first.last@domain.com";
var _authdata = Base64.encode('MyUsername' + ':' + 'MyPassword');
var _headers = {
'Authorization': 'Basic eWd***********0NQ==',
'Content-Type': 'application/json'
};
$http({
method: 'GET',
url: _url,
headers: _headers
}).then(function(request) {
console.log('request');
});
我正在试图理解为什么这不能正常工作。COR不是问题所在
有什么建议吗?Base64.encode对于angular js来说是不可理解的,您可以使用javascript“btao”和“atob”,或者您可以通过npm包含Base64 也许下面的代码片段会对您有所帮助
var _url = "https://api.domain.com/api/users/email/first.last@domain.com";
var _authdata = btoa('MyUsername' + ':' + 'MyPassword');
var _headers = {
'Authorization': 'Basic' + _authdata,
'Content-Type': 'application/json'
};
$http({
method: 'GET',
url: _url,
json: true,
headers: _headers
}).then(function(request) {
console.log('request');
});
也可以使用npm包含Angular-base64依赖项:
那么,服务器的响应是什么<代码>401,
403
,还有其他的吗?你发送的是帖子而不是get。您也不使用_authdata.Trymethod:'GET'
501出现在某些未实现的情况下,而您正在尝试这样做。哦,是的,抱歉,复制和粘贴错误。但得到它,答案是501。