【发布时间】:2019-05-09 21:51:22
【问题描述】:
工件管理系统是JFrog Artifactory Pro X。
根据REST API of JFrog 在我使用 REST API 的 Jenkins 工作中,我尝试获取特定包的最新工件版本,在这种情况下,id 是“MyLib”。
我的 NuGet 包存储在这里:https://artifactory.myserver.net/artifactory/api/storage/projectx-nuget/MyLib/MyLib.1.0.0.nupkg?properties=nuget.version,这会导致以下 JSON 响应:
{
"properties" : {
"nuget.version" : [ "1.0.0" ]
},
"uri" : "https://artifactory.myserver.net/artifactory/api/storage/projectx-nuget/MyLib/MyLib.1.0.0.nupkg"
}
还有以下 URL:https://artifactory.myserver.net/artifactory/api/storage/projectx-nuget/MyLib/MyLib.1.0.0.nupkg?properties=nuget.id 我得到有效的 JSON 响应:
{
"properties" : {
"nuget.id" : [ "MyLib" ]
},
"uri" : "https://artifactory.myserver.net/artifactory/api/storage/projectx-nuget/MyLib/MyLib.1.0.0.nupkg"
}
我尝试使用以下 URL https://artifactory.myserver.net/artifactory/api/versions/_any/_any?nuget.id=MyLib,但得到了
{
"errors" : [ {
"status" : 404,
"message" : "Not Found"
} ]
}
根据属性“nuget.id”,获取最新版本的正确 URL 是什么?
【问题讨论】:
-
为什么有两个 _any ?错字?
-
@error404 根据jfrog.com/confluence/display/RTF3X/…,用法是
GET /api/versions/{repo}/{path}?[listFiles=0/1]&[<property key>=<property value>]&[<property key>=<property value>],其中´{repo}:指定要搜索的存储库或替换为“_any”以搜索所有存储库´和´{path }:指定要搜索的路径或替换为“_any”以搜索所有路径。所以我用'_any'替换了这两个变量。
标签: jenkins nuget artifactory devops