我正在寻找 AngularJS 和 Elasticsearch 使用新的官方客户端库一起工作的工作示例:elasticsearch.angular.js 在 http://www.elasticsearch.org/blog/client-for-node-js-and-the-browser 找到
到目前为止,我发现的示例使用备用客户端或不再工作,因为版本之间发生了某些变化。这让 AngularJS 和 Elasticsearch 的新手很难上手。
具体来说,我正在寻找一个使用官方客户端通过 AngularJS 访问 Elasticsearch 的“Hello World”。
其他人似乎也有同样的问题,因为在官方客户端的 repo 中有一个要求同样事情的未解决问题。 https://github.com/elasticsearch/elasticsearch-js/issues/19
最佳答案
这是一种结合 AngularJS 和 Elasticsearch 的“Hello World”的方法
1) 确保您已经在本地机器上正确安装了 elasticsearch
按照 instructions
2) 测试您本地安装的 elasticsearch
通过在命令行中输入
curl -XGET localhost:9200
3) 将一些测试数据插入elasticsearch
只需运行此 gist 中的每个命令(通过单击每个旁边的绿色小三 Angular 形)
或者您可以通过在命令行中键入以下内容来手动插入数据:
curl -XPUT "http://localhost:9200/test_index/product/1" -d '{
"title": "Product1",
"description": "Product1 Description",
"price": 100
}'
curl -XPUT "http://localhost:9200/test_index/product/2" -d '{
"title": "Product2",
"description": "Product2 Description",
"price": 200
}'
4) 测试从 elasticsearch 检索数据
curl -XGET localhost:9200/test_index/product/1
5) 下载angular.elasticsearch.js (或缩小版)客户端并将其放置在 Angular 应用程序可用的地方(相同的目录应该很好)
6) 下载并运行以下代码
http://plnkr.co/edit/vfapGG
您也可以直接从 Plunkr 站点运行此 Plunk http://plnkr.co/vfapGG ,但这取决于您的安全设置,因为它需要访问位于 localhost:9200
恭喜!!
您现在拥有一个可用的 Elasticsearch 后端和 AngularJS 前端。
警告
在投入生产之前,请务必妥善保护您的 Elasticsearch 服务器,因为任何有权访问它的人都可以轻松修改或删除您存储的数据并获得对运行 Elasticsearch 服务器的计算机的控制(本质上是 shell 访问),如果它不是妥善保护。
关于javascript - Angular 和 Elasticsearch 的示例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22661996/