按ID获取g​​ithub用户名

Ton*_*ada 34 github github-api

使用此链接,我可以看到我在github上的(tonylampada)id是218821 https://api.github.com/users/tonylampada

我怎么能这样做呢?鉴于用户ID = 218821,用户名是什么?


更新

在这里回答nulltoken,因为它是一个很长的故事,它不适合评论.

FreedomSponsors是一个django应用程序,它使用django-social-auth来启用Github(和其他人)的登录.(你应该检查一下,顺便说一句,请参阅博客中的about页面 :-) Django-social-auth有一个配置标志,允许应用程序在数据库上存储github用户名.几天前,我部署了一个新版本的FS,启用了github登录,但"storeGithubUsername"设置为false.

一些用户注册了他们的github帐户,现在数据库有他们的github ID,但不是他们的用户名.

您可以在我的个人资料中查看我将github作为"关联帐户",但是没有指向我的github页面的链接.

我需要它来使链接指向https://github.com/tonylampada

我已经准备好部署一个修复此问题的新版本,方法是将"storeGithubUsername"(这不是它所谓的,我只是在这里简化)设置为true.但我想用已经github注册的用户修补数据库.我有他们的github ID,但不是他们的github用户名.

And*_*ate 52

我们需要在Gitter上执行此操作以处理用户在GitHub上更改其用户名的情况,并在查询旧用户名时收到404响应.

这是一个未记录的端点,所以使用它作为你自己的危险,但它现在确实有效.

使用端点:https://api.github.com/user/:id,其中:id是用户的ID.

类似的端点回购和机构单位存在,在 https://api.github.com/repositories/:idhttps://api.github.com/organizations/:id分别.

请注意,新存储库重定向预览API仅支持存储库,而不是重命名的用户或组织.实际上,HTTP 301重定向实际上指向了https://api.github.com/repositories/:id,因此这些"ID"端点很可能很快就会成为官方.

  • 它不再起作用了,至少它在我写作的时候不起作用. (2认同)
  • 它在我写作的时候在这里工作. (2认同)

nul*_*ken 7

没有记录的功能,也没有我所知道的未记录的功能,它们公开了从id中检索用户名.从GitHub API使用者的角度来看,用户ID是"实现细节".真正的关键是用户名.

据我所知,您只需要一组用户名给定一个id列表.这将是一次性请求,而不是永久性需求.

由于您的请求似乎是合法的并且范围有限,您可以直接从GitHub支持获得此答案,方法是在support@github.com上发送电子邮件.

事实上,GpaHubber的xpaulbettsx甚至在推特上写道:

支持@对你想要告诉GitHub的任何东西都有好处 - bug,功能,高5s; 安全的一切,除了安全性@安全@