Sco*_*ott 11 github github-api
在GitHub API中,我可以发出GET请求
https://api.github.com/repos/owner/repo/git/trees/master?recursive=1
以递归方式获取存储库的所有树.除了给我所有目录,它还提供了我可用于下载单个文件的URL:
[...]
{
"mode": "100644",
"type": "blob",
"sha": "abc1234",
"path": "path/to/file.txt",
"size": 104361,
"url": "https://api.github.com/repos/owner/repo/git/blobs/abc1234"
},
[...]
Run Code Online (Sandbox Code Playgroud)
虽然recursive=1这篇文章阻止我不得不对存储库中的每个目录发出新的GET请求,但我仍然需要为每个文件单独调用.我查看了GitHub API文档,但他们没有提供这样做的方法.很可能根本没有办法在单个请求中获取所有文件和文件夹,但我想在这里要求验证我没有其他选择.
使用单个请求执行此操作的唯一方法是将当前内容作为存档获取:http: //developer.github.com/v3/repos/contents/#get-archive-link
实际上,这是2个请求,因为初始响应是302重定向.