English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
يستخدم هذا الـ API للبحث في محتوى Elasticsearch. يمكن للمستخدم إجراء بحث عن طريق إرسال طلب GET يحتوي على سلسلة استعلام كمعامل أو يمكن نشر استعلام في جسم الطلب.
Elasticsearch يسمح لنا بالبحث في جميع المؤشرات أو بعض المؤشرات المحددة الموجودة.
GET /_all/_search?q=city:paprola
عندما نن�行 الكود المذكور أعلاه، نحصل على الاستجابة التالية-
{ "took": 33, "timed_out": false, "_shards": { "total": 7, "successful": 7, "skipped": 0, "failed": 0 }, "hits": { "total": { "value": 1, "relation": "eq" }, "max_score": 0.9808292, "hits": [ { "_index": "schools", "_type": "school", "_id": "5", "_score": 0.9808292, "_source": { "name": "Central School", "description": "CBSE Affiliation", "street": "Nagan", "city": "paprola", "state": "HP", "zip": "176115", "location": [ 31.8955385, 76.8380405 ], "fees": 2200, "tags": [ "Senior Secondary", "beautiful campus" ], "rating": "3.3" } } ] } }
يمكن استخدام معرف الموارد الموحدة (URI) لنقل العديد من المعاملات في عملية البحث
الترقيم | المعامل وشرحها |
---|---|
1 | Q يستخدم هذا المعامل لتعريف سلسلة البحث |
2 | lenient يستخدم هذا المعامل لتعريف سلسلة البحث. إذا تم تعيين هذا المعامل إلى true، يمكن تجاهل الأخطاء القائمة على Formatbased. لا يوجد افتراضيًا. |
3 | fields يستخدم هذا المعامل لتعريف سلسلة البحث |
4 | sort يمكننا استخدام هذا المعامل للحصول على نتائج مرتبة، والقيم الممكنة هي fieldName, fieldName:asc/ fieldName:desc |
5 | timeout يمكننا استخدام هذا المعامل لتحديد وقت البحث، وسيعتمد الاستجابة فقط على النتائج التي يتم استرجاعها في هذا الوقت. لا يوجد تحديد زمني افتراضي. |
6 | terminate_after يمكننا تقييد الاستجابة إلى عدد معين من الوثائق في كل شق، وسيؤدي البحث إلى التوقف مسبقًا عند الوصول إلى الشق المحدد. لا يوجد termin_after بشكل افتراضي. |
7 | from النوع الأول من النتائج التي سيتم استرجاعها. القيمة الافتراضية هي 0. |
8 | size انه يمثل عدد النتائج التي سيتم استرجاعها، والقيمة الافتراضية هي 10. |
يمكننا أيضًا استخدام DSL للبحث في جسم الطلب لتحديد البحث، وقد تم تقديم العديد من الأمثلة في الفصول السابقة. يُقدم هنا مثال من هذا النوع-
POST /schools/_search { "query": { "query_string": { "query": "up" } } }
عندما نن�行 الكود المذكور أعلاه، نحصل على الاستجابة التالية-
{ "took": 11, "timed_out": false, "_shards": { "total": 1, "successful": 1, "skipped": 0, "failed": 0 }, "hits": { "total": { "value": 1, "relation": "eq" }, "max_score": 0.47000363, "hits": [ { "_index": "schools", "_type": "school", "_id": "4", "_score": 0.47000363, "_source": { "name": "City Best School" "description": "ICSE", "street": "West End", "city": "Meerut", "state": "UP", "zip": "250002", "location": [ 28.9926174, 77.692485 ], "fees": 3500, "tags": [ "fully computerized" ], "rating": "4.5" } } ] } }