问题标签 [elasticsearch.js]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - ElasticSearchJS 与 Electron
我在一个使用电子的小项目中使用 elasticsearchjs。但不知何故,我遇到了一些奇怪的东西,阻碍了我。
在 Electron 中,我有一个按钮,点击时会触发一个功能:
以及以下 Javascript:
我可以看到hello world
输出,但不知何故弹性搜索功能不起作用,我收到超时错误...
但是,如果我对函数的调用加倍,并向 elasticsearch API 添加一个异步调用,它就可以工作,并且我进入了两个then()
调用:
如果我只放这个setTimeout()
函数,它也不起作用,就像我需要调用两次函数才能让它工作一样。
我尝试了一个真正的节点脚本,代码运行良好:
Electron 功能可能会阻止我的代码工作,我会错过什么?
谢谢大家的热心回复,祝您有美好的一天。
编辑:这是详细的错误和堆栈跟踪:
node.js - Elasticsearch.js 术语查询返回 0 个匹配项,映射设置为“not_analyzed”
我一直在尝试使用“术语”查询来搜索我的 ES 数据库。我一直得到 0 次点击。
这是我的映射:
这就是我向“用户”索引添加值的方式(所有值都是字符串类型,除了电影):
这是我尝试查询数据库的众多排列之一:
这是我一直得到的回应:
javascript - 在 elasticsearch.js 中获取 API
我正在使用elasticsearch js 客户端,目前我以这种方式发送请求:
但是没有身体我怎么能写出来呢?只需获取参数:
此外,我将不胜感激有关 node/js 的 body builder 库的任何建议(elasticsearch 文档为此建议 bodybuilder、elastic-builder 或 elastic.js)。
谢谢!
angular5 - 如何在 elasticsearch.js 客户端中排除主机中的端口号
我需要从 angular5 的 elastisearch.js 客户端调用没有端口号的弹性搜索 url
我需要像这样调用没有端口的 elasticsearch url
' https://myelasticsearch-api.xyz.com/api1/1.0 '
但它总是像这样附加默认端口
security - 我应该在哪里使用 elasticsearch.js 将生成的授权令牌放在 node.js 请求中?
我已经成功设置了 elasticsearch x-pack 安全性。我打算使用生成的令牌来限制请求。我在此页面之后生成了令牌: https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-tokens.html 并在 curl 中对其进行了测试:
它运作良好。但是当我尝试在我的 node.js 控制器中使用相同的令牌(使用 elasticsearch.js)时,我不知道我应该把它放在哪里,例如在“client.index”中:
它不起作用,并返回错误消息:
那么我应该如何在我的 node.js 请求中将这个生成的令牌传递给 elasticsearch 呢?
elasticsearch - Elasticsearch-js 没有关于 count(...) 的现有文档 - 任何示例/其他文档?
我在我的应用程序中使用elasticsearch js,并已成功连接和查询来自 elastic 的数据。
我现在正在尝试实现该count()
方法以返回索引中的文档数。这是简单的代码片段:
我替换params: CountParams
为,indexName
但我现在收到一个非法参数异常,说... [/_count] contains unrecognized parameters ...
我在任何地方都找不到关于计数方法的任何文档,无论是在 api、堆栈溢出还是在其他站点上。
如果有人能提供一个工作示例或任何链接,我将不胜感激。
谢谢!
node.js - 如何使用 elasticsearch.js 客户端列出所有索引
我需要使用 elasticsearch.js 节点模块列出我的 node.js 应用程序中的所有索引。我所拥有的是:
我得到的错误是:
列出所有可用索引的 client.indices.get 的正确语法是什么?
node.js - 如何正确列出 node.js 中的所有弹性搜索索引
在我的 node.js 应用程序中,我正在尝试构建所有弹性搜索索引的列表,并将此列表作为 JSON 发送到我的 Angular 应用程序。我正在使用 elasticsearch.js 模块:
然后,在我的 REST API 路由处理程序中,我正在 ping elasticsearch,并运行一个查询,假设返回所有索引:
我假设,一旦承诺得到解决,就会有一个对象从它返回,所以我将该对象引用为“索引”,但只会得到错误“索引未定义”。
获取此类列表并将结果分配给字符串的正确方法是什么?
javascript - 使用节点客户端库在 Elasticsearch 中插入数字(浮点数)
我正在尝试将文档插入 Elasticsearch,它们的格式如下:
我遇到的问题是零,在 JavaScript 中,您不能强制将“0”表示为“0.0”或“0.00”。
我不能在 ES 的映射中使用文本,因为我显然想对这些字段进行数学运算。所以我对上述所有内容都使用了“浮动”映射。
所以,对于这些领域中的每一个,我都有类似的东西:
我尝试了各种不同的组合,将它们存储为“文本”不允许我随意查询它们,如果我不定义映射,我会得到字段的“长”类型,这会截断它们,如果我使用 float 我会得到一个异常mapper [totalDiscount] cannot be changed from type [float] to [long]
,如果我完全删除它们,所以跳过保存我也会得到一个错误
Rejecting mapping update to [...] as the final mapping would have more than 1 type
非常感谢任何帮助,谢谢。