0

我正在尝试使用 Mirage 来构建我的弹性搜索查询。我已经开始在本地主机上进行弹性搜索,当我curl localhost:9210在终端上进行时,我得到以下详细信息:

"name" : "RN48HFb",
  "cluster_name" : "elasticsearch",
  "cluster_uuid" : "some number",
  "version" : {
    "number" : "5.6.0",
    "build_hash" : "something",
    "build_date" : "some date",
    "build_snapshot" : false,
    "lucene_version" : "6.6.0"
  },
  "tagline" : "You Know, for Search"
}

所以,我试图在 mirage 上连接这个弹性搜索集群来构建某些弹性搜索查询。

我使用什么 appname 和弹性搜索集群在 mirage 上连接它?

我试图将http://localhost:9210/放在 URL 部分,但它不起作用?appname 应该是什么:是“RN48HFb”吗?

请帮助我是新手。

我已经为 Mirage 安装了 chrome 扩展,并且 mirage 的 URL 是:

https://github.com/appbaseio/mirage

chrome-extension://dcnlpfmnpoggchflmdnkgiepijgljoka/site/index.html

4

1 回答 1

1

回复晚了非常抱歉

你只需要更新你的 ES 配置

脚步:

  1. 停止弹性搜索
  2. 更新 ES 配置:$DIR_ELASTIC/elasticsearch/elasticsearch.yml

添加此代码:

http.cors.enabled: true
http.cors.allow-origin: "*"
http.cors.allow-credentials: true
http.cors.allow-headers: "Authorization, X-Requested-With, Content-Type, Content-Length"
http.cors.allow-methods: "OPTIONS, HEAD, GET, POST, PUT, DELETE"
  1. 启动弹性搜索

    您可以打开控制台并尝试发出请求以确保 mirage 可以正常工作。

JS代码:

var xhr = new XMLHttpRequest();
xhr.open('POST', 'http://localhost:9200/_search', true);
xhr.withCredentials = true;
xhr.setRequestHeader('Content-Type', 'application/json');
xhr.setRequestHeader('Authorization', 'Basic ' + btoa('test:test'));
xhr.send('{"query":{"match_all":{}}}');

如果它的响应状态为 200,则尝试使用 mirage。

于 2018-07-25T19:20:55.247 回答