我们在尝试使用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")
到目前为止一切都没有效果。有没有其他人遇到这个问题,如果有的话,是否有解决方案?
感谢。
答案 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