如何在Artifactory REST API中使用下载文件规格?
使用Artifactory REST API实现带筛选的批量归档下载
你完全可以通过Artifactory的REST API直接使用文件规格(File Spec)来实现需求,这也是当前场景下的最优方案,不需要依赖CLI工具。
具体实现步骤
你可以向/api/archive/download/端点发送POST请求,将符合格式的文件规格JSON作为请求体传入,就能一次性完成带筛选的归档下载:
构造文件规格JSON
针对你的需求(非递归下载/my-artifactory-repo/somedir/下的所有.json文件,排除subdir1/目录内容),文件规格可以这样写:{ "files": [ { "repo": "my-artifactory-repo", "path": "somedir/", "name": "*.json", "recursive": false, "excludes": ["subdir1/**"] } ] }recursive: false确保仅扫描指定目录的直接子项,不会深入子目录excludes明确排除subdir1/下的所有内容name: "*.json"精准匹配目标文件类型
发送POST请求
用curl的示例如下(替换认证信息和Artifactory地址):curl -u username:password -X POST "https://your-artifactory-url/api/archive/download/" \ -H "Content-Type: application/json" \ -d @file-spec.json请求成功后,Artifactory会返回包含所有匹配文件的归档包(默认ZIP格式)。
为什么这是最优方案
- 一次性完成请求,避免多次调用Artifactory带来的性能开销和复杂度
- 完全贴合你的需求:非递归扫描、文件类型筛选、指定目录排除都能通过文件规格精准控制
- 基于官方REST API实现,稳定性和兼容性有保障
内容的提问来源于stack exchange,提问作者jusschwa
相关产品推荐
相关产品推荐

