如何通过GitHub API单次调用获取仓库目录下所有文件的content内容
关于GitHub获取仓库内容接口的批量返回问题解答
核心结论
无法通过单次调用该获取仓库内容接口,同时拿到指定目录下所有文件的content字段内容。
具体说明
这是GitHub API的固定返回逻辑,没有可调整的请求参数可以修改该行为:
- 当接口请求路径指向单个文件时,返回的单个文件对象会携带
encoding、content两个和文件内容相关的字段,content为base64编码的文件内容 - 当接口请求路径指向目录时,返回结果仅为目录下所有条目(文件、子目录)的元数据列表,所有文件条目不包含
content字段,仅包含文件名、路径、大小、sha、各类关联地址等基础信息。
可选优化方案
如果需要批量获取目录下多个文件的内容,可以先调用目录查询接口拿到所有文件的路径,再根据路径逐个请求单个文件接口获取内容;如果文件体积普遍较小,也可以直接拼接raw格式的文件地址直接拉取明文内容,减少base64解码步骤。
内容的提问来源于stack exchange,提问作者P Sinha
相关产品推荐
相关产品推荐

