【问题标题】:How can I get the open graph image for a GitHub repository?如何获取 GitHub 存储库的开放图形图像?
【发布时间】:2022-03-13 13:47:26
【问题描述】:

我一直在尝试通过 GitHub 公开的 GraphQL API 从我的存储库中获取打开的图形图像,但我总是取回我的头像。我尝试查询存储库节点、搜索和用户节点均无济于事。

例如,对于查询:

query {
  repository(name: "rust-algorithms", owner: "alexfertel") {
    openGraphImageUrl
    nameWithOwner
  }
}

我明白了:

"repository": {
  "openGraphImageUrl": "https://avatars.githubusercontent.com/u/22298999?s=400&v=4",
  "nameWithOwner": "alexfertel/rust-algorithms"
},

你可以看出它给出了一个头像,而不是 GitHub 为存储库生成的开放图形图像。

有没有办法在不涉及抓取 GitHub 的情况下获取此图像?

【问题讨论】:

    标签: github graphql github-api


    【解决方案1】:

    一般格式为:

    https://opengraph.githubassets.com/<any_hash_number>/<owner>/<repo>

    这里归功于 Reddit 上的用户 @msfjarvis

    any_hash_number

    我们可以在这里使用任何数字或字符串。这实际上是告诉 API 这是版本。最好使用散列,因为这样它总是会给出更新的图像。但是我们可以使用任何字符串,例如1a1a。如果我们总是使用1a,它不会给出更新的图像。

    【讨论】:

      【解决方案2】:

      您也可以通过 issue 和 pull request 获取它

      问题

      https://opengraph.githubassets.com/<any_hash_number>/<owner>/<repo>/issue/<issue_number>
      

      公关

      https://opengraph.githubassets.com/<any_hash_number>/<owner>/<repo>/pull/<pr_number>
      

      any_hash_number

      我们可以在这里使用任何数字或字符串。这实际上是告诉 API 这是版本。最好使用hash,因为这样它总是会给出更新的图像。但我们可以使用任何字符串,如1a1a。如果我们总是使用1a,它不会给出更新的图像。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2021-10-11
        • 2014-12-15
        • 2023-04-02
        • 1970-01-01
        • 1970-01-01
        • 2021-10-13
        • 2011-11-19
        相关资源
        最近更新 更多