web-dev-qa-db-ja.com

IDでGitHubユーザー名を取得する

このリンクを使用すると、githubの(tonylampada)idが218821 https://api.github.com/users/tonylampada であることがわかります

どうすれば反対のことができますか?ユーザーID = 218821の場合、ユーザー名は何ですか?


更新

ここでnulltokenに答えると、それは長い話であり、コメントに収まらないためです。

FreedomSponsors は、Django-social-authを使用してGithub(およびその他)でのログインを可能にするDjangoアプリケーションです。 (ちなみに、ブログの についてのページ を参照してください:-)データベース上。数日前、githubログインを有効にしたFSの新しいバージョンをデプロイしましたが、「storeGithubUsername」をfalseに設定しました。

少数のユーザーが自分のgithubアカウントを登録し、データベースにはgithub idがありますが、ユーザー名はありません。

「接続済みアカウント」としてgithubを持っている my profile に入れることができますが、githubページへのリンクはありません。

リンク先を https://github.com/tonylampada にするために必要です

これを修正する新しいバージョンをデプロイする準備ができました。「storeGithubUsername」(これは、それが呼ばれているものではなく、ここでは単純化しています)をtrueに設定することによって。しかし、すでにgithubに登録されているユーザーでデータベースにパッチを適用したいと思います。 github idは持っていますが、githubユーザー名は持っていません。

32
Tony Lâmpada

Gitter でこれを行う必要があります。これは、ユーザーがGitHubでユーザー名を変更した場合に対処し、古いユーザー名を照会するときに404応答を取得します。

ここに文書化されていないエンドポイントがありますので、独自の危険として使用してください。しかし、今のところは機能します。

エンドポイントを使用します:https://api.github.com/user/:id、 どこ :idはユーザーのIDです。

リポジトリと組織の同様のエンドポイントは、https://api.github.com/repositories/:idおよびhttps://api.github.com/organizations/:idそれぞれ。

新しい リポジトリリダイレクトプレビューAPI は、名前の変更されたユーザーまたは組織ではなく、リポジトリのみをサポートすることに注意してください。実際、HTTP 301リダイレクトは実際にhttps://api.github.com/repositories/:idですから、これらの「ID」エンドポイントが実際にすぐに公式になる可能性があります。

45

IDからのユーザー名の取得を公開する文書化された機能も、私が知っている文書化されていない機能もありません。 GitHub APIコンシューマーの観点から見ると、ユーザーIDは「実装の詳細」です。実際のキーはユーザー名です。

私が理解していることから、IDのリストを与えられたユーザー名のバッチのみが必要です。そして、これは一度限りのリクエストであり、永続的な必要ではありません。

リクエストは正当で範囲が限られているように見えるため、support @ github.comにメールを送信して、GitHubサポートから直接この回答を得ることができます。

確かに、xpaulbettsx、GitHubber、偶数これについてツイート

Support @は、GitHubに伝えたいあらゆるもの(バグ、機能、ハイ5)に適しています。 security @に行くセキュリティ以外のすべて

8
nulltoken