4

ユーザーの組織のリストを取得する方法を知っています。

ただし、ユーザーがユーザー/組織名を入力できるようにし、その名前に対してオートコンプリートを提供したいと考えています。オートコンプリートには、所属する組織だけでなく、すべてのユーザー/組織が含まれます。

リスト全体を取得するには長すぎます (そして、GitHub がそれを公開しているのかどうかもわかりません) が、特定のプレフィックスの上位 5 から 20 だけが必要です。

Search API は、オートコンプリート API ではなく、単一トランザクション検索のような匂いがするので、使用できたとしても、レート制限に頻繁に達し、UX が低下する可能性が高いです。

https://github.com/autocomplete/users?q= prefixでこれに近いものがありますが、それは公式の GitHub API の一部ではないため、バックエンドがこれらの種類のクエリをサポートしていることはわかっています... API ドキュメントから見つけられないだけで、API 以外の URL にアクセスしたくありません。

4

1 に答える 1

2

GitHub がこれを行うことはありません。選択肢の 1 つは、そのようなサービスを自分で構築し、ユーザーのリストを常に更新することです。ユーザーのリストを (正気で) 更新する 1 つの方法は、次のようにすることです。

  • にイニシャルGETを付ける/users?per_page=100
  • 返されたヘッダーを保存し、ETagページネーションを使用して最新のものをすべて取得します
  • 将来のリクエストでは に沿って送信し、ETag新しいユーザーがいる場合は最新の を保存しETagます。
  • 繰り返す。

したがって、GitHub ユーザーのリストを最新の状態に保っている限り、オートコンプリート サービスを自分で構築することができます。

また、ETag返すものが何もない場合は、送信するとレート制限が節約されることに注意してください。

于 2013-08-29T13:32:06.930 に答える