5

API に接続して認証ヘッダーを送信しようとしています。こちらで説明されているように Base64 を使用しています

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= ? を読み込めません。要求されたリソースに「Access-Control-Allow-Origin」ヘッダーがありません。したがって、オリジン ' http://....com ' へのアクセスは許可されていません。応答の HTTP ステータス コードは 400 でした。

4

1 に答える 1

3

Cross-Origin Resource Sharing (CORS) で問題が発生しているようです。以下をお読みください: Access-Control-Allow-Origin ヘッダーはどのように機能しますか?

Access-Control-Allow-Originサーバーを制御する場合は、参照した質問のサーバーコードに従って適切なヘッダーを送り返すことができます( Angularjs で基本的な認証を機能させるにはどうすればよいですか? )

于 2015-01-14T23:21:55.577 に答える