Я нахожусь в течение 2 часов моего погружения с эластичным поиском. Я успешно установил ES с Marvel (с marvel.agent.enabled: false
в config/elasticsearch.yml) и смог сделать успешные запросы от Sense. Я перезапустил свою машину разработки, и теперь, когда я делаю следующий запрос на Sense, он отвечает:
Request failed to get to the server (status code: 0):
Elasticsearch may not be reachable or you may need to check your CORS settings.If CORS is enabled, try turning off Sense Basic Authentication support under Setting (cog icon).This will result in a less strict CORS enforcement by the browser.
Please check the marvel documentation for more information.
Запрос (источник):
PUT /megacorp/employee/1
{
"first_name" : "John",
"last_name" : "Smith",
"age" : 25,
"about" : "I love to go rock climbing",
"interests": [ "sports", "music" ]
}
Как указано, я проверил, доступен ли ES, сделав аналогичный запрос на завиток:
Запрос:
curl -XPUT http://localhost:9200/megacorp/employee/100 -d '{ "first_name" : "test" }'
Ответ:
{"_index":"megacorp","_type":"employee","_id":"100","_version":1,"created":true}
Это заставляет меня думать, что ES доступен.
Перейдя к следующей проверке, вам может потребоваться проверить настройки CORS. Я добавил следующую конфигурацию elasticsearch.yml(и перезапустил ES) на основе этой рекомендации:
http.cors.enabled: true
http.cors.allow-origin: /.*/
http.cors.allow-credentials: true
Но никаких изменений в поведении нет.
Переключение "Поддержка Basic Auth" в настройках Marvel/Smart также не влияет.
Приветствуем любые указатели на то, что может пойти не так.