やってみる

アウトプットすべく己を導くためのブログ。その試行錯誤すらたれ流す。

GitHubAPIのv3とv4どっちを使えばいいか

 v3のほうが良い。リクエスト制限がゆるいから。(2019-05-03時点)

 新しいなら上位互換だろうと思ったが、まるで別物だった。

v4はリクエスト制限がきびしい

v リクエスト制限
v3 5000req/1h
v4 5000node/1h

 v4はGraphQLという形式だが、そのせいでサーバ負荷が高いらしい。よってリクエスト制限は厳しくなる。

 リクエスト制限の厳しさは単位をみればわかる。v3はreqでリクエスト回数。1時間あたり5000回リクエストできる。v4はnodeでノード数。1回のリクエストで多数のノードを消費するらしい。実用的ではなさそう。

v4が使いにくい理由

  • v4はGraphQLである
    • 学習コストが生じる(新たな記法を覚えねばならない)
    • リクエスト制限が厳しい(サーバ負荷が高い)

 そもそも調べるのも面倒。

  • どこまでできるかわからない(v3でできることすべて?)
  • ググると出てくるのはv3が多い

所感

 以下のように使いやすそうな点もあるのだが、制約がきびしそう。「学習したはいいけどリクエスト制限にひっかかって全然使えない」という自体になることを恐れて避けることにした。残念。

  • v4はscopeが範囲外なら必要なスコープを教えてくれるらしい
  • application/vnd.github.mercy-preview+jsonみたいなHTTPヘッダ付与しなくていい?