如何通过 nexus3 api 获取存储库中的组件?

How can I get components in repository via nexus3 api?

我在 nexus3 中有一个原始存储库,名为“marvel”。 在存储库中,我有大约 5000 个名为“spiderman”的组件(例如“spiderman-22”、“directory/spiderman-tar”等)。

我想获取存储库中的组件列表。

我在 their website 中看到了一种通过 api 获取组件的方法:

curl -u admin:admin123 -X GET 'http://localhost:8081/service/rest/v1/components?repository=marvel'

我有两个问题:

  1. 我没有从 api 中获取所有组件(它们可能有限制 - 我需要大约 5000 个组件)。
  2. 如何添加搜索 api(即只有名称为“spiderman”的组件)?
  1. I don't get all the components from the api (they probably have a limits - and I need about 5000 components).

每个需要的 API 端点都已分页。如 the documentation 中所述,您必须使用延续标记调用相同的 uri,例如:

GET /service/rest/v1/<api>?<query>&continuationToken=88491cd1d185dd136f143f20c4e7d50c
  1. How do I add search for the api (i.e. only components with the name "spiderman")?

通过使用专用 search API endpoint

请注意,您可以查看 API 并通过在您自己的 nexus 安装上调用 swagger 页面从浏览器中试用它:http(s)://your.nexus。 server/swagger-ui/

您也可以从服务器管理 > 系统 > API 导航到它。