2017-08-04 8 views
0

静的なhtmlページで、私はREST GETを呼び出してjsonデータを取得しようとしています。 私はURLを持っています。私はURLでアカウント+秘密のブラウザでヒットし、ブラウザでjsonデータを取得できます。私はあなたに正しいURLを与えるカントが、これはそのようなものです:私は成功せず、stackoverflowの上の多くの例を試してみました基本認証jsonデータを取得するための残りの呼び出し

http://123456:[email protected]/Media/service/id/323847.json 

!ここ は、私が試してみましたと私は戻ってエラーを得るものです:エラー

<script type="text/javascript"> 

function getRest(){ 

$.ajax({ 
    type: 'GET', 
    url: 'http://media.fakename.com/Media/service/id/323847.json', 
    dataType: 'json', 

    beforeSend: function (xhr) { 
    xhr.setRequestHeader('Authorization', basicOath('123456', 'ABCDEFGHIJKLM')); 
    }, 
    success: function() { 
    var myvar = data; 
    $(".text").html(myvar); 
    }, 
    error: function(jqXHR, status) { 
    $(".text").html("Error: " + status); 
    } 
}); 
} 

function basicOath(account, secret) { 
var tok = account + ':' + secret; 
var hash = btoa(tok); 
return 'Basic ' + hash; 
} 

</script> 

<input id="clickMe" type="button" value="get rest" onclick="getRest();" /> 
<div class="text">abc <br />' 

は私が画像を取り戻すために、残りの呼び出しを行うためにjqueryの例を試すことができました。それは完全に動作します。 http://api.jquery.com/jquery.getjson/ 私は休憩をすることができることを知っている。

私は間違っていますか?あなたの助けてくれてありがとう、私はスタックとウェブ上のすべての例を網羅している。私はレンガの壁に当たった。

+0

ブラウザのネットワークコンソールでは、どのような応答コードが表示されますか?副作用として、成功メソッドには入力パラメータとして 'データ'がありませんが、それを使用しようとしています。それはそのように定義されません。あなたがそれでやっていることは奇妙に思えますが。あなたはデータを取得してそれをページに貼り付けていますが、jsonのように 'dataType'と答えると、応答はjsonになると思います(そうでなければエラーになります)。これは正確ですか?ページに生のjsonを入れたいですか? – Taplar

+0

生データは配列に格納されます。私はちょうどテスト目的のためにページに置いていた。 Uncaught SyntaxError:予期しないトークンが発生しています)、プリフライトリクエストに対するレスポンスがアクセスコントロールのチェックを通過しません。要求されたリソースに 'Access-Control-Allow-Origin'ヘッダーがありません。したがって、 'http:// localhost'はアクセスが許可されていません。応答にHTTPステータスコード401がありました。 – piddler

+0

構文エラーが発生し、ブロックされているCORS要求を作成している場所があります。 – Taplar

答えて

0
beforeSend: function (xhr) { 
    xhr.setRequestHeader ("Authorization", "Basic " + btoa(username + ":" + password)); 
}, 
関連する問題