Github ページでいくつかの JSON ファイルをホストしています$.getJSON
が、まったく同じドメインからのものでない限り、それらを取得するために使用できません。
Github ページで CORS を有効にする方法はありますか?
Github ページでいくつかの JSON ファイルをホストしています$.getJSON
が、まったく同じドメインからのものでない限り、それらを取得するために使用できません。
Github ページで CORS を有効にする方法はありますか?
Github Pages で CORS が有効になりました。
CORS ヘッダー:
Access-Control-Allow-Origin: *
Github ページからのすべての応答にデフォルトで追加されます!
回避策として JSONP を使用できますが、ファイルが静的であり、それぞれに固有のコールバック メソッドが必要になるため、それでも少し面倒です。
もう 1 つの方法は、ファイルを Gists に保存し、CORS で動作する Github API を使用することです。
3 つ目の可能性は、ファイルを Github ページに保存せず、代わりに CORS が有効になっている S3/Cloudfront ディストリビューションでホストすることです。
APIなら可能だけど限界がある…
「基本認証または OAuth を使用するリクエストの場合、1 時間あたり最大 5,000 件のリクエストを作成できます。認証されていないリクエストの場合、レート制限により、1 時間あたり最大 60 件のリクエストを作成できます。認証されていないリクエストは、ユーザーではなく IP アドレスに関連付けられています。リクエストを作成します。」
var xhr = new XMLHttpRequest();
xhr.open('GET', 'https://api.github.com/repos/jimmywarting/diezyweb/contents/index.html?ref=gh-pages');
xhr.setRequestHeader("Accept", "application/vnd.github.3.raw");
xhr.send();
xhr.onload = function(e){
alert(xhr.response)
}