You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过URL下载GitHub私有仓库文件?权限配置咨询

问题

我在GitHub有一个私有仓库文件,已生成仅授予“Pull requests”和“Metadata(必填)”只读权限的细粒度token。尝试使用以下URL下载文件均返回404错误:

  • https://myuser:token_generated@github.com/myuser/myrepository/file.txt:返回“Not Found”空白页
  • https://myuser:token_generated@github.com/myuser/myrepository/blob/file.txt、https://myuser:token_generated@github.com/myuser/myrepository/blob/main/file.txt:跳转至GitHub 404页面,提示“This is not the web page you are looking for.”
  • https://myuser:token_generated@raw.githubusercontent.com/myuser/myrepository/main/file.txt:返回“404:not Found”空白页

请问正确的下载URL是什么?是否需要为Token赋予更多权限?

解决方案

1. 正确的下载URL

私有仓库的原始文件下载需使用GitHub API接口,而非直接访问raw或blob页面。正确的URL格式为:

https://api.github.com/repos/myuser/myrepository/contents/file.txt?ref=main

请替换以下参数:

  • myuser:你的GitHub用户名
  • myrepository:目标仓库名称
  • file.txt:文件的完整路径(若文件在子文件夹中,需写成folder/subfolder/file.txt)
  • main:文件所在的分支名(如master或自定义分支)

注意:不要将token放在URL中做Basic认证,需在请求头中携带token,格式为Authorization: Bearer token_generated。

2. 权限调整

当前token仅拥有“Pull requests”和“Metadata”权限,不具备读取仓库内容的权限,这是导致404的核心原因。需为token添加Contents的只读权限:

  1. 进入GitHub的细粒度token管理页面
  2. 找到目标token,在“Repository permissions”区域找到“Contents”选项
  3. 将权限设置为“Read”并保存

更新权限后,使用上述API URL并携带正确的请求头,即可成功下载文件。

内容的提问来源于stack exchange,提问作者vbajr

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.24 02:57:08