elasticsearch,Angularjs,elasticsearch" /> elasticsearch,Angularjs,elasticsearch" />

angularjs和ElasticSearchJSAPI,如何强制获取而不是发布

angularjs和ElasticSearchJSAPI,如何强制获取而不是发布,angularjs,elasticsearch,Angularjs,elasticsearch,我将ElasticSearchJavaScript api与angularjs结合使用。这是非常好的工作,但我需要通过中间件查询elasticsearch服务,以过滤危险的请求(删除、更新)。中间件使用“GET”,但API默认使用“POST”查询 根据文档,我可以指定一个参数“method”,以便通过API使用“GET”查询: 它与“POST”一起工作,但与“GET”一起失败,“GET”和我有一个错误: Error: elasticQuery.search(...) is undefined

我将ElasticSearchJavaScript api与angularjs结合使用。这是非常好的工作,但我需要通过中间件查询elasticsearch服务,以过滤危险的请求(删除、更新)。中间件使用“GET”,但API默认使用“POST”查询

根据文档,我可以指定一个参数“method”,以便通过API使用“GET”查询:

它与“POST”一起工作,但与“GET”一起失败,“GET”和我有一个错误:

 Error: elasticQuery.search(...) is undefined
我该怎么做?“Get”可以处理下面这个示例中的长而复杂的查询

我就是这样尝试的:

 return elasticQuery.search({
         method : 'GET',
         index: 'indexbotanic',
         from: 0
         size: 10,
         body: {
            "fields" : ["C_COLLECTIONCODE", "T_SCIENTIFICNAME", "T_SCIENTIFICNAMEAUTHORSHIP", "T_SPECIFICEPITHET", "T_KINGDOM", "T_PHYLUM", "T_CLASS_", "T_ORDER_", "T_FAMILY", "T_GENUS", "T_SUBGENUS", "T_VERNACULARNAME", "O_CATALOGNUMBER", "O_RECORDNUMBER", "O_CREATED", "O_SEX", "I_INSTITUTIONCODE", "D_DETERMINATIONID", "D_IDENTIFIEDBY", "M_IDENTIFIER", "E_RECORDNUMBER", "E_RECORDEDBY", "L_CONTINENT", "L_COUNTRY", "L_COUNTRYCODE", "L_COUNTY", "L_LOCALITY"],
            "query" : {
                "filtered" : {
                    "filter" : {
                        "and" : [{
                                "or" : [{
                                        "term" : {
                                            "L_CONTINENT" : "europe"
                                        }
                                    }
                                ]
                            }, {
                                "or" : [{
                                        "term" : {
                                            "T_FAMILY" : "lamiaceae"
                                        }
                                    }
                                ]
                            }, {
                                "or" : [{
                                        "term" : {
                                            "E_RECORDEDBY" : "balay, r."
                                        }
                                    }, {
                                        "term" : {
                                            "E_RECORDEDBY" : "boissier, p.e."
                                        }
                                    }
                                ]
                            }, {
                                "or" : [{
                                        "term" : {
                                            "T_SCIENTIFICNAME" : "lamium amplexicaule"
                                        }
                                    }
                                ]
                            }, {
                                "or" : [{
                                        "term" : {
                                            "T_GENUS" : "lamium"
                                        }
                                    }, {
                                        "term" : {
                                            "T_GENUS" : "betonica"
                                        }
                                    }
                                ]
                            }
                        ]
                    }
                }
            },
            "highlight" : {
                "pre_tags" : ["<strong>"],
                "post_tags" : ["</strong>"],
                "fields" : {
                    "C_COLLECTIONCODE" : {},
                    "O_CATALOGNUMBER" : {},
                    "O_RECORDNUMBER" : {},
                    "O_CREATED" : {},
                    "O_SEX" : {},
                    "D_DETERMINATIONID" : {},
                    "D_IDENTIFIEDBY" : {},
                    "E_EVENTID" : {},
                    "E_RECORDNUMBER" : {},
                    "E_RECORDEDBY" : {},
                    "L_CONTINENT" : {},
                    "L_COUNTRY" : {},
                    "L_COUNTRYCODE" : {},
                    "L_COUNTY" : {},
                    "L_LOCALITY" : {},
                    "T_SCIENTIFICNAME" : {},
                    "T_SCIENTIFICNAMEAUTHORSHIP" : {},
                    "T_SPECIFICEPITHET" : {},
                    "T_KINGDOM" : {},
                    "T_PHYLUM" : {},
                    "T_CLASS_" : {},
                    "T_ORDER_" : {},
                    "T_FAMILY" : {},
                    "T_GENUS" : {},
                    "T_SUBGENUS" : {},
                    "T_VERNACULARNAME" : {}

                }
            },
            "aggs" : {
                "L_CONTINENT_MISSING" : {
                    "missing" : {
                        "field" : "L_CONTINENT"
                    }
                },
                "O_SEX_MISSING" : {
                    "missing" : {
                        "field" : "O_SEX"
                    }
                },
                "I_INSTITUTIONCODE_MISSING" : {
                    "missing" : {
                        "field" : "I_INSTITUTIONCODE"
                    }
                },
                "T_TAXONRANK_MISSING" : {
                    "missing" : {
                        "field" : "T_TAXONRANK"
                    }
                },
                "D_TYPESTATUS_MISSING" : {
                    "missing" : {
                        "field" : "D_TYPESTATUS"
                    }
                },
                "O_HASMEDIA_MISSING" : {
                    "missing" : {
                        "field" : "O_HASMEDIA"
                    }
                },
                "T_SCIENTIFICNAME_MISSING" : {
                    "missing" : {
                        "field" : "T_SCIENTIFICNAME"
                    }
                },
                "T_FAMILY_MISSING" : {
                    "missing" : {
                        "field" : "T_FAMILY"
                    }
                },
                "T_GENUS_MISSING" : {
                    "missing" : {
                        "field" : "T_GENUS"
                    }
                },
                "E_RECORDEDBY_MISSING" : {
                    "missing" : {
                        "field" : "E_RECORDEDBY"
                    }
                },
                "L_CONTINENT" : {
                    "terms" : {
                        "field" : "L_CONTINENT",
                        "size" : 20
                    }
                },
                "O_SEX" : {
                    "terms" : {
                        "field" : "O_SEX",
                        "size" : 20
                    }
                },
                "I_INSTITUTIONCODE" : {
                    "terms" : {
                        "field" : "I_INSTITUTIONCODE",
                        "size" : 20
                    }
                },
                "T_TAXONRANK" : {
                    "terms" : {
                        "field" : "T_TAXONRANK",
                        "size" : 20
                    }
                },
                "D_TYPESTATUS" : {
                    "terms" : {
                        "field" : "D_TYPESTATUS",
                        "size" : 20
                    }
                },
                "O_HASMEDIA" : {
                    "terms" : {
                        "field" : "O_HASMEDIA",
                        "size" : 20
                    }
                },
                "T_SCIENTIFICNAME" : {
                    "terms" : {
                        "field" : "T_SCIENTIFICNAME",
                        "size" : 20
                    }
                },
                "T_FAMILY" : {
                    "terms" : {
                        "field" : "T_FAMILY",
                        "size" : 20
                    }
                },
                "T_GENUS" : {
                    "terms" : {
                        "field" : "T_GENUS",
                        "size" : 20
                    }
                },
                "E_RECORDEDBY" : {
                    "terms" : {
                        "field" : "E_RECORDEDBY",
                        "size" : 20
                    }
                }
            },
            "sort" : "_score"
        }
     }).then(function (response) {
     ...
     }
那么,如何强制api使用“-d'{…}”发送get呢? 非常感谢

尝试使用此客户端:并将POST更改为GET。不过,我不确定哪些浏览器支持带有正文的GET请求,您可能会遇到限制

curl -XGET 'http://localhost:9200/index/tablename/_search?pretty' -d '{
  "query": {
    "query_string": { 
         "query":"*keysearch*", 
         "fields": ["field1","field2","field3"]
     }
   }
}'