因此,我有一个GitHub用户ID的列表,我需要使用GitHub API来获取每个用户的元数据。我可以使用(https://api.github.com/user/#useridhere)获取单个用户的元数据,但是我想一次传递许多ID号以生成一个文件。
答案 0 :(得分:0)
如果您愿意使用用户的登录名,则可以使用V4 GraphQL API来执行此操作。您将动态构建查询,然后可以在一个响应中获取所有数据。
query {
user1: user(login: "JPHaus") {
...UserFragment
}
user2: user(login: "mjpieters") {
...UserFragment
}
user3: user(login: "benbalter") {
...UserFragment
}
}
fragment UserFragment on User {
id
createdAt
company
databaseId
email
location
login
name
updatedAt
url
}
您可以使用GraphQL Explorer对其进行测试。有关片段here的更多信息。
答案 1 :(得分:0)
此答案适用于REST API,因为该问题已标记为rest
。请参阅乔纳森·波特(Jonathan Porter)关于GraphQL API的答案。
根据GitHub REST API v3 documentation,支持以下用户元数据查询:
- 获得一个用户
- 获取经过身份验证的用户
- 更新经过身份验证的用户
- 获取有关用户的上下文信息
- 获取所有用户
这些中的最后一个仅返回多个用户的元数据,但这不是您想要的:
以他们在GitHub上注册的顺序列出所有用户。此列表包括个人用户帐户和组织帐户。注意:分页完全由since参数提供动力。使用链接标题获取用户下一页的URL。
因此,至少对于他们的API版本3,没有终结点可以通过ID列表查询多个用户。您必须针对每个用户ID提出一个请求。