สำหรับเหล่าสาวกของ Elasticsearch ที่ต้องการจะเรียกใช้งาน Elasticsearch ด้วย Ajax อาจจะต้องพบกับปัญหา “No Access Control Allow Origin” ที่เกิดจากการเรียกข้ามโดเมน วิธีแก้ปัญหาก็ให้เข้าไปตั้งค่าของ Elasticsearch ที่ไฟล์ elasticsearch.yml
ข้อความแสดง Error อาจจะขึ้นประมาณนี้ครับ
XMLHttpRequest cannot load http://localhost:9200/. No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://localhost:8080' is therefore not allowed access.
วิธีแก้ไขเข้าไปแก้ไขไฟล์ elasticsearch.yml เพื่อเปิดใช้งาน cors ครับ
http.cors.enabled : true http.cors.allow-origin : "*" http.cors.allow-methods : OPTIONS, HEAD, GET, POST, PUT, DELETE http.cors.allow-headers : X-Requested-With,X-Auth-Token,Content-Type, Content-Length
แหล่งข้อมูล: How to solve No Access Control Allow Origin with elastic search