angularjs基本身份验证标头

时间:2015-01-14 22:57:43

标签: angularjs http-authentication angular-http-auth

我尝试连接到API并发送身份验证标头。 我正在使用此处所述的Base64 How do I get basic auth working in angularjs?

function Cntrl($scope, $http, Base64) {

$http.defaults.headers.common['Authorization'] = 'Basic ' + Base64.encode('----myusername----' + ':' + '----mypass---');
$http({method: 'GET', url: 'https://.../Category.json'}).
    success(function(data, status, headers, config) {
        console.log('success');
    }).
    error(function(data, status, headers, config) {
        alert(data);
        });
}

但我收到此错误

XMLHttpRequest无法加载https://.../Category.json?callback=? No' Access-Control-Allow-Origin'标头出现在请求的资源上。起源' http://....com'因此不允许访问。响应的HTTP状态代码为400。

1 个答案:

答案 0 :(得分:3)

看起来您遇到了跨源资源共享(CORS)的问题。阅读: How does Access-Control-Allow-Origin header work?

如果您控制服务器,那么您可以让它根据您引用的问题中的服务器代码(How do I get basic auth working in angularjs?)发回适当的Access-Control-Allow-Origin标头