运行查询编辑

请求结构编辑

每个端点都带有一个请求类型,它代表其请求的主体。例如,在 name 字段中搜索术语“Foo”的简单搜索请求可以这样编写

search.Request{
    Query: &types.Query{
        Term: map[string]types.TermQuery{
            "name": {Value: "Foo"},
        },
    },
}

原始 JSON编辑

最后,如果您想使用自己的预先制作的 JSON 查询(使用模板甚至特定的编码器),您可以将主体直接传递给端点的 Raw 方法

es.Search().Raw([]byte(`{
  "query": {
    "term": {
      "user.id": {
        "value": "kimchy",
        "boost": 1.0
      }
    }
  }
}`))

通过此方法发送的内容不会进行进一步的验证或序列化,使用此方法设置有效负载优先于您在运行查询之前提交的任何请求结构。