2017-01-09 13 views
3

私はここで設定githubのページサイトをしました。最終的な見た目と機能はこのサイトと似ています:http://threejs.liveGithubのAPIレート制限

私のレート制限が当たったために403エラーが発生しました。認証するとレート制限が大きくなることは理解できますが、このサイトを公開したいと思います。このため、私はいくつかの質問があります:

  1. トラフィックが増加した場合、いずれのレート制限も問題になります。 公開ページのレート制限を無効にできる合理的なシナリオはありますか?
  2. ユーザーアカウントで認証する場合は、Githubページでサーバーサイドトークンを作成するにはどうすればよいですか?このトークンがクライアントに表示されないことを確認します。レポはここにあります:https://github.com/ekatzenstein/d3.js-live
  3. エンドユーザがGithubでログインすることはオプションではありません。特にGithubに慣れていない人にとっては、これを低レベルのエントリにしたいと考えています。 ユーザーあたりの料金制限を結ぶことは可能ですか?

マイク・ボストックのbl.ocksは、レート制限を回避するようだが、それはこれがどのように行われるか私にははっきりしません。

+0

これにはバックエンドがありますか、それとも純粋にクライアント側ですか。現在、ちょうどこの問題を回避するには(明白な)方法は、バックを持っているので、[OK]を、私は尋ねた – msanford

+0

純粋にクライアント側-endは応答をキャッシュし、すべてのユーザーに応答します。これはあなたの他の例がしていることです(親指はすべてbl.ockから提供されます)。 – ekatz

+0

githubのページサイト(packages.jsonの「NPMの実行デプロイ」)を展開するために作成する反応するアプリを使用して – msanford

答えて

1

制限を回避する最良の方法は、GitHubの(または誰)へのAPIリクエストを行うシンプルなバックエンドを書くレートリミットを下回っているためにいくつかの時間のためにそれらの結果をキャッシュして、すべて提供することですその要求からユーザーに必要な資産。

JavaScriptが多型である場合は、既にNodeJSサーバーにあるもののほとんどを入れるのは簡単です。

一般的に、これはとなるでしょう。おそらくこのようなツールは、とにかく実行する必要があります。もちろん、トレードオフが必要な場合は、いずれの方法でも議論が可能です。

これは、たとえばbl.ocksのようなものです。