Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/tfs/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何将原始JSON传递到ElasticSearch嵌套中的RegisterPercolator? - Fatal编程技术网

如何将原始JSON传递到ElasticSearch嵌套中的RegisterPercolator?

如何将原始JSON传递到ElasticSearch嵌套中的RegisterPercolator?,
Warning: implode(): Invalid arguments passed in /data/phpspider/zhask/webroot/tpl/detail.html on line 45
,,我正在尝试用C创建一个对象无关的Percolator microservice。我可以使用JSON对象创建并映射传递到我的方法中的索引,然后我甚至可以使用标准嵌套查询格式针对索引注册一个Percolator,例如: var percolateResponse = client.RegisterPercolator<dynamic>(query .Name, p=>p .Index(index.ActualName) .Query(q=&g

我正在尝试用C创建一个对象无关的Percolator microservice。我可以使用JSON对象创建并映射传递到我的方法中的索引,然后我甚至可以使用标准嵌套查询格式针对索引注册一个Percolator,例如:

var percolateResponse = client.RegisterPercolator<dynamic>(query
    .Name, p=>p
        .Index(index.ActualName)
        .Query(q=>q
            .Term(t=>t
                .OnField("banana")
                .Value("green"))));
但是,它没有将指定的查询注册为percolator查询,而是将RegisterPercolatorRequest的查询值设置为null,并且基本上取消了存在的查询

我尝试了许多不同格式的JSON,但没有发现.Queryq=>q.Rawquery.Context喜欢的东西

有人知道如何解决这个问题吗?我已经离解决这个问题越来越近了,但我从来没有完全解决过这个问题。这是创建percolator代理类的最后一个障碍。感谢您的帮助。谢谢

仅供参考,我在响应对象内部得到的错误如下:

[<indexName>] failed to parse query [<queryName>]]; 
nested: QueryParsingException[[<indexName>] [_na] query malformed, 
no field after start_object
我想我已经找到了解决我想做的事情的方法。。。上面的查询不起作用,但通过一些尝试和错误,我发现了在对象不可知查询和注册percolator中的作用:

var percolateResponse = client.RegisterPercolator<dynamic>(query
    .Name, p => p
        .Index(index.ActualName)
        .Query(q => q
            .SimpleQueryString(sqs=>sqs
                .Query(query.Context))));
这会将查询创建为一个简单的查询字符串,并将其存储在ElasticSearch中,然后当我尝试过滤匹配该查询的文档时,它似乎会起作用

[<indexName>] failed to parse query [<queryName>]]; 
nested: QueryParsingException[[<indexName>] [_na] query malformed, 
no field after start_object
var percolateResponse = client.RegisterPercolator<dynamic>(query
    .Name, p => p
        .Index(index.ActualName)
        .Query(q => q
            .SimpleQueryString(sqs=>sqs
                .Query(query.Context))));