Jag*_*ind 2 artifactory artifactory-query-lang
根据以下链接,Artifactory AQL通过仅返回感兴趣的字段,允许通过REST API"显示特定字段". https://www.jfrog.com/confluence/display/RTF/Artifactory+Query+Language#ArtifactoryQueryLanguage-DisplayingSpecificFields
如果我提供字段列表,它不起作用,见下文
不工作 - 不好要求(400)
items.find(...).include("name","repo")
作品
items.find(...).包括( "*")
任何人都可以建议
谢谢,Jag
Gid*_*i.S 10
我怀疑这个问题与REST调用期间的编码有关,因此我建议将查询作为文件上传这是一个工作示例:
将以下查询保存到文件中,我们将其称为aql.query
items.find
(
{
"repo": {"$match":"*"}
}
)
.include("name","repo")
Run Code Online (Sandbox Code Playgroud)
从包含aql.query文件的同一目录运行以下curl命令,不要忘记使用您的用户名,密码,主机和端口替换命令中的模板.
curl -X POST -uuser:password'http :// host:port/artifactory/api/search/aql' -Taql.query
在结果中你将得到:
{
"results" :
[
{
"repo" : "ext-snapshot-local",
"name" : "maven-metadata.xml"
},{
"repo" : "ext-snapshot-local",
"name" : "multi-3.0.0-20150705.195404-1.pom"
},{
.
.
.
}
],
"range" :
{
"start_pos" : 0,
"end_pos" : 46,
"total" : 46
}
}
Run Code Online (Sandbox Code Playgroud)
如您所见,结果仅包含"item repo"和"item name"字段.
小智 6
有同样的问题。花了相当多的时间试图弄清楚这一点。在网上找不到答案。
对于错误的请求 (400),我打印了响应文本:“出于权限原因,AQL 需要以下字段:存储库、路径和名称。”
这个解决方案对我有用 - 至少:有存储库、路径、名称。即... items.find(...).include("name", "repo", "path", "created_by")
| 归档时间: |
|
| 查看次数: |
1971 次 |
| 最近记录: |