GitHub Graphql:获取用户赞助商的赞助商层信息
Posted
技术标签:
【中文标题】GitHub Graphql:获取用户赞助商的赞助商层信息【英文标题】:GitHub Graphql : Getting sponsor tier information for the sponsors of a user 【发布时间】:2020-06-02 12:51:52 【问题描述】:我正在使用 GitHub graphql 获取用户的赞助商信息。虽然我能够获取特定用户的赞助商,但我无法获取赞助商的赞助层信息。我写的graphql查询如下:
user(login: <<loginID>>)
name
sponsorshipsAsMaintainer(first: 1)
totalCount
nodes
createdAt
privacyLevel
tier
createdAt
name
description
sponsor
login
我为一个用户得到的结果如下。理想情况下,在查询中,我希望获得层级信息,但结果为tier
字段返回null
。
"data":
"user":
"name": "XXX",
"sponsorshipsAsMaintainer":
"totalCount": 11,
"nodes": [
"createdAt": "2020-02-16T10:39:14Z",
"privacyLevel": "PUBLIC",
"tier": null,
"sponsor":
"login": "XXX"
]
任何帮助或信息来获取赞助商的等级信息将不胜感激。非常感谢。
【问题讨论】:
您好!您找到解决此问题的方法了吗? 【参考方案1】:到目前为止,tier
仍然是 null
,我还没弄清楚这有什么问题。
但是我设法使用以下查询获取层信息:
query getTiers($login: String!)
user(login: $login)
sponsorshipsAsSponsor(first: 1)
nodes
sponsorable
sponsorsListing
tiers(first: 5)
nodes
id
【讨论】:
【参考方案2】:我正在使用以下查询来查找赞助商,并且我只获取我自己的等级的等级信息。我假设查看者的 databaseId 必须与赞助的 databaseId 匹配才能看到此信息
query
user(login: "$login")
sponsorshipsAsSponsor(first: 100)
nodes
privacyLevel
tier
monthlyPriceInDollars
sponsorable
... on User
databaseId
... on Organization
databaseId
这里有一个用户赞助了我以外的其他三个项目(我替换了其他项目的 databaseIds)
"data":
"user":
"sponsorshipsAsSponsor":
"nodes": [
"privacyLevel": "PUBLIC",
"tier":
"monthlyPriceInDollars": 3
,
"sponsorable":
"databaseId": 220908 <--- Me
,
"privacyLevel": "PUBLIC",
"tier": null,
"sponsorable":
"databaseId": 1
,
"privacyLevel": "PUBLIC",
"tier": null,
"sponsorable":
"databaseId": 1
,
"privacyLevel": "PUBLIC",
"tier": null,
"sponsorable":
"databaseId": 1
]
【讨论】:
以上是关于GitHub Graphql:获取用户赞助商的赞助商层信息的主要内容,如果未能解决你的问题,请参考以下文章