在AngularJS中使用elasticsearch.js查询
Using elasticsearch.js queries in AngularJS
我试图在AngularJS控制器中使用elasticsearch.js查询,但无法在http请求中将它们作为params传递,也无法在elasticsearch()方法中使用它们。建议的语法是什么?
import elasticsearch from "elasticsearch";
export default class SearchDirectiveController {
constructor($scope, $http, SearchDirectiveService) {
this.es = new elasticsearch.Client({
host: 'http://192.168.99.100:9200',
log: 'trace'
});
this.search = () => {
this.es.search({
index: 'voter',
"query": {
"match": {
"first": "roger"
}
}
}
}).then((resp) => {
var hits = resp.hits.hits;
this.users = hits;
$scope.$digest();
},(err) => {
console.trace(err.message);
});
}
this.fullTextSearch = () => {
$http({
method: 'GET',
url: 'http://192.168.99.100:9200/voter/voter,address/_search'
}).then(function successCallback(resp) {
console.log(resp.data.hits.hits);
let hits = resp.data.hits.hits;
$scope.users = hits;
}, function errorCallback(err) {
console.trace(err.message);
}, {
params: {
"query": {
"match": {
"first": "roger"
}
}
}
});
}
}
}
SearchDirectiveController.$inject = ['$scope', '$http', 'SearchDirectiveService'];
我的问题是我忘记了搜索对象上的键"body":
this.searchQuery = (field) => {
return {
'query': {
'wildcard': {
'_all': '*' + this.all + '*'
}
}
};
};
this.search = (field) => {
this.es.search({
index: 'voter',
body: this.searchQuery(field)
}).then((resp) => {
const hits = resp.hits.hits;
this.users = hits;
$scope.$digest();
}, (err) => {
console.trace(err.message);
});
};
}
相关文章:
- 可以't让我的if语句处理js中的html表单输入
- 使用agility.js进行页面布局和合成
- 使用Clipboard.js复制span文本
- 使用JS如何动态更改显示的html文件中的文本背景颜色
- 强制模板刷新ember.js
- 如何编写HTML输入的JS内联
- 为什么node.js不等到恢复完成(_search request in to elasticsearch)
- 从redis到elasticsearch的Node.js脚本副本内存不足
- 使用 elasticsearch.js 时出现 CORS 错误
- Node.js上特定索引的Elasticsearch快照失败
- elasticsearch.js大容量插入错误
- 在AngularJS中使用elasticsearch.js查询
- Using elasticsearch.js
- 不能使用JS从elasticsearch服务器获取结果
- Express.js的elasticsearch查询不工作
- 使用angularjs或node js的Elasticsearch
- 如何在不使用require的情况下获得elasticsearch.js
- elasticsearch-js库中的多字段搜索
- Combine elasticsearch js with bluebird
- 如何使用Elasticsearch .js和Angular在Elasticsearch上搜索嵌套对象