0
我正在嘗試將彈性搜索中的geoshape查詢集成到我的angularjs代碼中,以便發出http請求來獲取駐留在elasticsearch本地實例上的數據,但控制檯拋出錯誤無效XMLhttp參數。我想這與我如何將URL添加到geojson有關。以下是我在哪裏創建http請求集成geojson查詢以angularjs生成http請求
function spatialsearch() {
var _url = '127.0.0.1:9201/_search?';
var b = {
"query": {
"bool": {
"must": {
"match_all": {}
},
"filter": {
"geo_shape": {
"metadata.o2r.spatial.geometry": {
"shape": {
"type": "polygon",
"coordinates": [
[
[-22.0, 76.0],
[-27.0, 65.0],
[-57.0, 65.0],
[-59.0, 76.0],
[-22.0, 76.0]
]
]
},
"relation": "contains"
}
}
}
}
}
};
_url += b;
return $http.get(_url);
console.log("hello");
}
這裏的功能是如何我在angularjs
function callingspatialsearch(){
var deferred = $q.defer();
httpRequests.
spatialsearch()
.then(cb1)
.catch(errorHandler);
return deferred.promise;
function cb1(response){
$log.debug('result of search: %o', response);
deferred.resolve(response);
}
function errorHandler(e){
$log.debug('search error: %o', e);
deferred.resolve(e);
}
}
在我的HTML我加入呼籲在我的js文件的HTTP請求一個按鈕,這樣當用戶點擊按鈕時,結果就會顯示出來。
<md-button ng-click="vm.button()" class="search-button md-primary md-raised white-font">Spatial</md-button>
你可能需要張貼在體內的查詢,而不是將其附加到網址,並用GET發送它的。 – Val
@Val我不明白你的意思發佈在身體查詢?你能舉個小例子嗎? – Rehan
我的意思是這樣的:'$ http.post(_url,b)'並刪除行_url + = b;' – Val