在Cloudera Navigator API中使用空格搜索文件名

时间:2018-01-11 14:14:14

标签: bigdata apache-nifi cloudera-navigator

我们在尝试使用Cloudera Navigator API检索其中包含空格的文件名的信息时遇到问题。我们可以通过将文件名包装在引号中来在Navigator UI中搜索这些文件名。但是,到目前为止,我们还无法弄清楚如何使用API​​来实现它。

我们尝试使用原始文件名:

http://navigator.url.com:7187/api/v9/entities/?query=parentPath :( / some / parent / path )AND originalName:(Prov Layout-Others.txt)

我们尝试用"%20"替换空间:

http://navigator.url.com:7187/api/v9/entities/?query=parentPath :( / some / parent / path )AND originalName:(Prov%20Layout-Others.txt)

我们尝试在网址中用引号包装文件名:

http://navigator.url.com:7187/api/v9/entities/?query=parentPath :( / some / parent / path )AND originalName:(" ProvLayout-Others.txt")

到目前为止一切都没有效果。有没有其他人遇到这个问题,如果有的话,是否有解决方案?

感谢。

2 个答案:

答案 0 :(得分:1)

原来搜索带有空格的文件名的方法是在构造REST API URL时用星号(*)替换空格。

答案 1 :(得分:0)

对于v9 API,您可以使用+(query1)+(query2)或%2B(query1)%20%2B(query2)进行多次查询。

对于空格,您可以使用'%20'。如果您使用星号,它将在您的关键字(而不仅仅是空格)之间获得任何字符。例如,'customer * ID'将返回'customer National ID'以及'customer ID'。

这适用于搜索说明中的“客户ID”和父路径中的/ default / *

url:7187/?query=%2B(description%3A"Customer%20ID")%20%2B(parentPath%3A%5C%2Fdefault%5C%2F*)&facets=%7B%7D