SearchClient class
الفئة المستخدمة لتنفيذ عمليات ضد فهرس بحث، بما في ذلك الاستعلام عن المستندات في الفهرس بالإضافة إلى إضافتها وتحديثها وإزالتها.
المنشئون
| Search |
إنشاء مثيل SearchClient. مثال على الاستخدام:
اختياريا، يمكن استخدام نوع النموذج لتمكين الكتابة القوية وتلميحات النوع:
|
الخصائص
| api |
إصدار واجهة برمجة التطبيقات لاستخدامه عند الاتصال بالخدمة. |
| endpoint | نقطة نهاية خدمة البحث |
| index |
اسم الفهرس |
| service |
إصدار الخدمة المراد استخدامه عند الاتصال بالخدمة. |
الأساليب
| autocomplete(string, string, Autocomplete |
استنادا إلى نص بحث جزئي من المستخدم، قم بإرجاع قائمة بسلاسل الإكمال المحتملة استنادا إلى مقترح محدد. المثال
|
| delete |
حذف مجموعة من المستندات. |
| delete |
حذف مجموعة من المستندات. |
| get |
استرداد مستند معين من الفهرس بالمفتاح. |
| get |
استرداد عدد المستندات في الفهرس. |
| index |
قم بإجراء مجموعة من تعديلات الفهرس (تحميل ودمج ودمجOrUpload وحذف) لمجموعة معينة من المستندات.
قد تنجح هذه العملية جزئيا ولن تنعكس جميع عمليات المستند في الفهرس. إذا كنت ترغب في التعامل مع هذا كاستثناء، فقم بتعيين الخيار |
| merge |
تحديث مجموعة من المستندات في الفهرس. لمزيد من التفاصيل حول كيفية عمل الدمج، راجع https://docs.microsoft.com/en-us/rest/api/searchservice/AddUpdate-or-Delete-Documents |
| merge |
قم بتحديث مجموعة من المستندات في الفهرس أو قم بتحميلها إذا لم تكن موجودة. لمزيد من التفاصيل حول كيفية عمل الدمج، راجع https://docs.microsoft.com/en-us/rest/api/searchservice/AddUpdate-or-Delete-Documents |
| search<TFields>(string, Search |
إجراء بحث على الفهرس الحالي نظرا للوسيطات المحددة. المثال
|
| suggest<TFields>(string, string, Suggest |
إرجاع قائمة قصيرة من الاقتراحات استنادا إلى نص البحث والمقترح المحدد. المثال
|
| upload |
تحميل صفيف من المستندات إلى الفهرس. |
تفاصيل المنشئ
SearchClient<TModel>(string, string, KeyCredential | TokenCredential, SearchClientOptions)
إنشاء مثيل SearchClient.
مثال على الاستخدام:
const { SearchClient, AzureKeyCredential } = require("@azure/search-documents");
const client = new SearchClient(
"<endpoint>",
"<indexName>",
new AzureKeyCredential("<Admin Key>")
);
اختياريا، يمكن استخدام نوع النموذج لتمكين الكتابة القوية وتلميحات النوع:
type TModel = {
keyName: string;
field1?: string | null;
field2?: { anotherField?: string | null } | null;
};
const client = new SearchClient<TModel>(
...
);
new SearchClient(endpoint: string, indexName: string, credential: KeyCredential | TokenCredential, options?: SearchClientOptions)
المعلمات
- endpoint
-
string
نقطة نهاية خدمة البحث
- indexName
-
string
اسم الفهرس
- credential
يستخدم لمصادقة الطلبات إلى الخدمة.
- options
- SearchClientOptions
يستخدم لتكوين عميل البحث.
تفاصيل الخاصية
apiVersion
تحذير
واجهة برمجة التطبيقات هذه مهملة الآن.
use {@Link serviceVersion} instead
إصدار واجهة برمجة التطبيقات لاستخدامه عند الاتصال بالخدمة.
apiVersion: string
قيمة الخاصية
string
endpoint
نقطة نهاية خدمة البحث
endpoint: string
قيمة الخاصية
string
indexName
اسم الفهرس
indexName: string
قيمة الخاصية
string
serviceVersion
إصدار الخدمة المراد استخدامه عند الاتصال بالخدمة.
serviceVersion: string
قيمة الخاصية
string
تفاصيل الأسلوب
autocomplete(string, string, AutocompleteOptions<TModel>)
استنادا إلى نص بحث جزئي من المستخدم، قم بإرجاع قائمة بسلاسل الإكمال المحتملة استنادا إلى مقترح محدد.
المثال
import {
AzureKeyCredential,
SearchClient,
SearchFieldArray,
} from "@azure/search-documents";
type TModel = {
key: string;
azure?: { sdk: string | null } | null;
};
const client = new SearchClient<TModel>(
"endpoint.azure",
"indexName",
new AzureKeyCredential("key")
);
const searchFields: SearchFieldArray<TModel> = ["azure/sdk"];
const autocompleteResult = await client.autocomplete(
"searchText",
"suggesterName",
{ searchFields }
);
function autocomplete(searchText: string, suggesterName: string, options?: AutocompleteOptions<TModel>): Promise<AutocompleteResult>
المعلمات
- searchText
-
string
نص البحث الذي سيتم إنشاء نتائج الإكمال التلقائي عليه.
- suggesterName
-
string
اسم المقترح كما هو محدد في مجموعة المقترحات التي تشكل جزءا من تعريف الفهرس.
- options
-
AutocompleteOptions<TModel>
خيارات لعملية الإكمال التلقائي.
المرتجعات
Promise<AutocompleteResult>
deleteDocuments(keyof TModel, string[], IndexDocumentsOptions)
حذف مجموعة من المستندات.
function deleteDocuments(keyName: keyof TModel, keyValues: string[], options?: IndexDocumentsOptions): Promise<IndexDocumentsResult>
المعلمات
- keyName
-
keyof TModel
اسم المفتاح الأساسي في الفهرس.
- keyValues
-
string[]
قيم المفتاح الأساسي للمستندات المراد حذفها.
- options
- IndexDocumentsOptions
خيارات إضافية.
المرتجعات
Promise<IndexDocumentsResult>
deleteDocuments(TModel[], IndexDocumentsOptions)
حذف مجموعة من المستندات.
function deleteDocuments(documents: TModel[], options?: IndexDocumentsOptions): Promise<IndexDocumentsResult>
المعلمات
- documents
-
TModel[]
المستندات المراد حذفها.
- options
- IndexDocumentsOptions
خيارات إضافية.
المرتجعات
Promise<IndexDocumentsResult>
getDocument<TFields>(string, GetDocumentOptions<TModel, TFields>)
استرداد مستند معين من الفهرس بالمفتاح.
function getDocument<TFields>(key: string, options?: GetDocumentOptions<TModel, TFields>): Promise<NarrowedModel<TModel, TFields>>
المعلمات
- key
-
string
قيمة المفتاح الأساسي للمستند
- options
-
GetDocumentOptions<TModel, TFields>
خيارات إضافية
المرتجعات
Promise<NarrowedModel<TModel, TFields>>
getDocumentsCount(OperationOptions)
استرداد عدد المستندات في الفهرس.
function getDocumentsCount(options?: OperationOptions): Promise<number>
المعلمات
- options
- OperationOptions
خيارات لعملية العد.
المرتجعات
Promise<number>
indexDocuments(IndexDocumentsBatch<TModel>, IndexDocumentsOptions)
قم بإجراء مجموعة من تعديلات الفهرس (تحميل ودمج ودمجOrUpload وحذف) لمجموعة معينة من المستندات.
قد تنجح هذه العملية جزئيا ولن تنعكس جميع عمليات المستند في الفهرس. إذا كنت ترغب في التعامل مع هذا كاستثناء، فقم بتعيين الخيار throwOnAnyFailure إلى صحيح.
لمزيد من التفاصيل حول كيفية عمل الدمج، راجع: https://docs.microsoft.com/en-us/rest/api/searchservice/AddUpdate-or-Delete-Documents
function indexDocuments(batch: IndexDocumentsBatch<TModel>, options?: IndexDocumentsOptions): Promise<IndexDocumentsResult>
المعلمات
- batch
-
IndexDocumentsBatch<TModel>
صفيف من الإجراءات التي يجب تنفيذها على الفهرس.
- options
- IndexDocumentsOptions
خيارات إضافية.
المرتجعات
Promise<IndexDocumentsResult>
mergeDocuments(TModel[], IndexDocumentsOptions)
تحديث مجموعة من المستندات في الفهرس. لمزيد من التفاصيل حول كيفية عمل الدمج، راجع https://docs.microsoft.com/en-us/rest/api/searchservice/AddUpdate-or-Delete-Documents
function mergeDocuments(documents: TModel[], options?: IndexDocumentsOptions): Promise<IndexDocumentsResult>
المعلمات
- documents
-
TModel[]
المستندات المحدثة.
- options
- IndexDocumentsOptions
خيارات إضافية.
المرتجعات
Promise<IndexDocumentsResult>
mergeOrUploadDocuments(TModel[], IndexDocumentsOptions)
قم بتحديث مجموعة من المستندات في الفهرس أو قم بتحميلها إذا لم تكن موجودة. لمزيد من التفاصيل حول كيفية عمل الدمج، راجع https://docs.microsoft.com/en-us/rest/api/searchservice/AddUpdate-or-Delete-Documents
function mergeOrUploadDocuments(documents: TModel[], options?: IndexDocumentsOptions): Promise<IndexDocumentsResult>
المعلمات
- documents
-
TModel[]
المستندات المحدثة.
- options
- IndexDocumentsOptions
خيارات إضافية.
المرتجعات
Promise<IndexDocumentsResult>
search<TFields>(string, SearchOptions<TModel, TFields>)
إجراء بحث على الفهرس الحالي نظرا للوسيطات المحددة.
المثال
import {
AzureKeyCredential,
SearchClient,
SearchFieldArray,
} from "@azure/search-documents";
type TModel = {
key: string;
azure?: { sdk: string | null } | null;
};
const client = new SearchClient<TModel>(
"endpoint.azure",
"indexName",
new AzureKeyCredential("key")
);
const select = ["azure/sdk"] as const;
const searchFields: SearchFieldArray<TModel> = ["azure/sdk"];
const searchResult = await client.search("searchText", {
select,
searchFields,
});
function search<TFields>(searchText?: string, options?: SearchOptions<TModel, TFields>): Promise<SearchDocumentsResult<TModel, TFields>>
المعلمات
- searchText
-
string
نص للبحث
- options
-
SearchOptions<TModel, TFields>
خيارات لعملية البحث.
المرتجعات
Promise<SearchDocumentsResult<TModel, TFields>>
suggest<TFields>(string, string, SuggestOptions<TModel, TFields>)
إرجاع قائمة قصيرة من الاقتراحات استنادا إلى نص البحث والمقترح المحدد.
المثال
import {
AzureKeyCredential,
SearchClient,
SearchFieldArray,
} from "@azure/search-documents";
type TModel = {
key: string;
azure?: { sdk: string | null } | null;
};
const client = new SearchClient<TModel>(
"endpoint.azure",
"indexName",
new AzureKeyCredential("key")
);
const select = ["azure/sdk"] as const;
const searchFields: SearchFieldArray<TModel> = ["azure/sdk"];
const suggestResult = await client.suggest("searchText", "suggesterName", {
select,
searchFields,
});
function suggest<TFields>(searchText: string, suggesterName: string, options?: SuggestOptions<TModel, TFields>): Promise<SuggestDocumentsResult<TModel, TFields>>
المعلمات
- searchText
-
string
نص البحث المراد استخدامه لاقتراح المستندات. يجب أن يكون حرفا على الأقل، ولا يزيد عن 100 حرف.
- suggesterName
-
string
اسم المقترح كما هو محدد في مجموعة المقترحات التي تشكل جزءا من تعريف الفهرس.
- options
-
SuggestOptions<TModel, TFields>
خيارات لعملية الاقتراح
المرتجعات
Promise<SuggestDocumentsResult<TModel, TFields>>
uploadDocuments(TModel[], IndexDocumentsOptions)
تحميل صفيف من المستندات إلى الفهرس.
function uploadDocuments(documents: TModel[], options?: IndexDocumentsOptions): Promise<IndexDocumentsResult>
المعلمات
- documents
-
TModel[]
المستندات المطلوب تحميلها.
- options
- IndexDocumentsOptions
خيارات إضافية.
المرتجعات
Promise<IndexDocumentsResult>