我在Nexus 3.x中创建了一个原始存储库,我可以将工件上传到同一个存储库。现在我想使用Rest API获取驻留在该repo中的所有工件的列表。 任何帮助表示赞赏。
答案 0 :(得分:2)
您可以在Nexus中使用 - 仍处于测试阶段的新API。默认情况下,它在版本3.3.0及更高版本上可用:http://localhost:8082/swagger-ui/
基本上,您从此URL检索json输出:http://localhost:8082/service/siesta/rest/beta/assets?repositoryId=YOURREPO
一次只显示10条记录,您必须使用提供的continuationToken通过调用以下方式请求存储库的下10条记录:http://localhost:8082/service/siesta/rest/beta/assets?continuationToken=46525652a978be9a87aa345bdb627d12&repositoryId=YOURREPO
此处提供更多信息:http://blog.sonatype.com/nexus-repository-new-beta-rest-api-for-content
答案 1 :(得分:1)
在当前的Nexus3.14.0-04中,REST API已成为最终版本(不再是“ beta”),并且您需要的卷曲是:
curl -X GET“ http://localhost:8081/service/rest/v1/components?repository=central” -H“ accept:application / json”
这将返回每个“组件”(组,名称,版本)及其所有资产=组成该组件的每个文件(pom,sha1,md5,jar)
结果是一个JSON字符串。
相反,如果您要基于groupId,artifactId执行COMPONENTS搜索,则可以使用以下curl:
curl -X GET“ http://localhost:8081/service/rest/v1/search?repository=central&format=maven2&maven.groupId=com.fasterxml.jackson.core&maven.artifactId=jackson-core&maven.extension=jar” -H“ accept:application / json”
这将返回带有子资产的COMPONENTS。
仅检索资产而不按COMPONENT分组的变量是GET /service/rest/v1/search/assets?repository=central&format=maven2&maven.groupId=com.fasterxml.jackson.core&maven.artifactId=jackson- core&maven.extension = jar