0

appannie.com の API からデータを取得しようとしていますが、基本認証が機能していないようです。私が得るのは401(UNAUTHORIZED)エラーだけです。ここに私が持っているものがあります:

var username = "email@email.com";
var password = "password";
var url = "https://api.appannie.com/v1/accounts";

function make_base_auth(user, password) {
  var tok = user + ':' + password;
  var hash = btoa(tok);
  return "Basic " + hash;
}
$.ajax({
    url: url,
    dataType: "jsonp",
    beforeSend: function (xhr){
        xhr.setRequestHeader('Authorization', make_base_auth(username, password));
        xhr.setRequestHeader('Accept', "application/json");
    },
    success: function(data) {
        alert("success");
    },
    fail: function(data) {
        alert("fail");
    }
});
4

1 に答える 1

1

jQuery/javascript ではクロスドメイン呼び出しは許可されていません。クロスドメイン jQuery ajax 呼び出しの場合、信頼できるオプションは 2 つだけです。

1: xml を要求する必要があるページと同じドメインで要求を行うプロキシ スクリプトを使用します。

http://wiki.asp.net/page.aspx/1430/aspnet-proxy-page--used-for-cross-domain-requests-from-ajax-and-javascript/

2: クロスドメイン サーバーが CORS をサポートするようにします。

http://www.html5rocks.com/en/tutorials/cors/

また、セキュリティ上の理由から推奨されない別のオプション (JSON-P) もあります。

http://www.ibm.com/developerworks/library/wa-aj-jsonp1/

あなたの場合は1番が当てはまると思います。

于 2013-05-16T01:04:34.010 に答える