从私人 github 仓库下载已发布的资产

Download released asset from private github repo

我正在尝试从私有存储库中的版本下载单个添加的资产,但我得到的只是 404 响应。资产的下载 url 是 https://github.com/<user>/<repo>/releases/download/20211022/file.json

我尝试了几种不同的方法来指定用户名和私有访问令牌,但都给出了相同的结果。当我使用访问令牌访问 api.github.com 时,它似乎可以工作。

我在 curl

中尝试了以下格式
curl -i -u <user>:<token> <url>
curl -i "https://<user>:<token>@github.com/ ...."
curl -i -H "Authorization: token <token>" <url>

可以从发行版下载源代码 (zip),但这有一个不同的url:https://github.com/<user>/<repo>/archive/refs/tags/20211022.zip

我做错了什么?

如文档中所述here
您必须使用 url: /repos/{owner}/{repo}/releases/assets/{asset_id} 而不是 browser_download_url 并设置请求 header 以接受 application/octet-stream 下载。
并且不要忘记添加 Authorization header。