按id获取github用户名
通过这个链接,我可以看到我在github上的(tonylampada)id是218821 我怎么能做相反的事呢?如果用户id=218821,用户名是什么按id获取github用户名,github,github-api,Github,Github Api,通过这个链接,我可以看到我在github上的(tonylampada)id是218821 我怎么能做相反的事呢?如果用户id=218821,用户名是什么 更新 在这里回答nulltoken,因为这是一个很长的故事,不适合在评论中使用 是一个django应用程序,它使用django social auth启用Github(以及其他)登录。 (你应该去看看,顺便说一句,请看博客中的:-) Django social auth有一个配置标志,允许应用程序在数据库中存储github用户名。 几天前,
更新 在这里回答nulltoken,因为这是一个很长的故事,不适合在评论中使用 是一个django应用程序,它使用django social auth启用Github(以及其他)登录。 (你应该去看看,顺便说一句,请看博客中的:-) Django social auth有一个配置标志,允许应用程序在数据库中存储github用户名。 几天前,我部署了一个新版本的FS,启用了github登录,但“storeGithubUsername”设置为false 一些用户注册了他们的github帐户,现在数据库有了他们的github ID,但没有用户名 你可以看到,我的github是一个“连接帐户”,但没有指向我的github页面的链接 我需要它使链接指向 我准备部署一个新版本来解决这个问题,方法是将“storeGithubUsername”(这不是它的名称,我只是在这里简化)设置为true。
但是我想用已经注册了github的用户修补数据库。我有他们的github id,但没有他们的github用户名。据我所知,没有记录在案的功能,也没有未记录在案的功能,可以公开从id检索用户名。从github API消费者的角度来看,用户id是一个“实现细节”。真正的关键是用户名 据我所知,您只需要给定ID列表的一批用户名。这将是一个一次性的要求,而不是永久的需要 由于您的请求似乎合法且范围有限,您可以直接从GitHub支持部门获得此答案,方法是将电子邮件发送到support@github.com. 事实上,xpaulbettsx,一个Githuber,甚至: Support@适用于任何你想告诉GitHub的东西——bug、功能、高5s;除了安全以外的所有东西都属于安全@ 我们需要这样做来处理这样的情况:用户在GitHub上更改了用户名,我们在查询他们的旧用户名时得到404响应 这里有一个未记录的端点,所以使用它会有风险,但它现在确实有效 使用端点:
https://api.github.com/user/:id
,其中:id
是用户的id
回购协议和组织存在类似的端点
https://api.github.com/repositories/:id
和https://api.github.com/organizations/:id
请注意,新版本仅支持存储库,而不支持重命名的用户或组织。事实上,HTTP 301重定向实际上指向
https://api.github.com/repositories/:id
,所以这些“ID”端点很有可能很快正式生效。为什么需要这个?说来话长。。。更新了问题。请,知道答案:o)所以我猜没有办法从id获取用户名。。对吧?谢谢!我测试过了,它能工作。我更新了它,使其成为正确答案。它不再有效,至少在我写这篇文章的时候它不起作用了。哈,从来没有意识到ID是连续的。它不起作用了,而且变得很危险:GitHub现在允许所有数字登录,所以这个请求现在返回不相关的用户。注意端点https://api.github.com/user/:id
有API限制,我在我的网络请求中发现了这条消息:{“消息”:“x.x.x.x超过了API速率限制(但好消息是:经过身份验证的请求获得了更高的速率限制。有关详细信息,请查看文档”。”,“文档url”:https://docs.github.com/rest/overview/resources-in-the-rest-api#rate-很好地限制“}
即使用户名是“真正的密钥”,它也可以更改,这可能会有问题。