Freigeben über


SearchClient class

Klasse, die zum Ausführen von Vorgängen für einen Suchindex verwendet wird, einschließlich Abfragen von Dokumenten im Index sowie Hinzufügen, Aktualisieren und Entfernen dieser Dokumente.

Konstruktoren

SearchClient<TModel>(string, string, KeyCredential | TokenCredential, SearchClientOptions)

Erstellt eine instance von SearchClient.

Beispielverwendung:

const { SearchClient, AzureKeyCredential } = require("@azure/search-documents");

const client = new SearchClient(
  "<endpoint>",
  "<indexName>",
  new AzureKeyCredential("<Admin Key>")
);

Optional kann der Typ des Modells verwendet werden, um starke Eingabe- und Typhinweise zu aktivieren:

type TModel = {
  keyName: string;
  field1?: string | null;
  field2?: { anotherField?: string | null } | null;
};

const client = new SearchClient<TModel>(
  ...
);

Eigenschaften

apiVersion

Die API-Version, die bei der Kommunikation mit dem Dienst verwendet werden soll.

endpoint

Der Endpunkt des Suchdiensts

indexName

Der Name des Indexes

serviceVersion

Die Dienstversion, die bei der Kommunikation mit dem Dienst verwendet werden soll.

Methoden

autocomplete(string, string, AutocompleteOptions<TModel>)

Geben Sie basierend auf einem teilweisen searchText des Benutzers eine Liste potenzieller Vervollständigungszeichenfolgen basierend auf einem angegebenen Vorschlag zurück.

Beispiel

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 }
);
deleteDocuments(keyof TModel, string[], IndexDocumentsOptions)

Löschen Sie eine Reihe von Dokumenten.

deleteDocuments(TModel[], IndexDocumentsOptions)

Löschen Sie eine Reihe von Dokumenten.

getDocument<TFields>(string, GetDocumentOptions<TModel, TFields>)

Rufen Sie ein bestimmtes Dokument aus dem Index nach Schlüssel ab.

getDocumentsCount(OperationOptions)

Ruft die Anzahl der Dokumente im Index ab.

indexDocuments(IndexDocumentsBatch<TModel>, IndexDocumentsOptions)

Führen Sie eine Reihe von Indexänderungen (upload, merge, mergeOrUpload, delete) für die angegebene Gruppe von Dokumenten aus. Dieser Vorgang kann teilweise erfolgreich sein, und nicht alle Dokumentvorgänge werden im Index widerspiegelt. Wenn Sie dies als Ausnahme behandeln möchten, legen Sie die throwOnAnyFailure Option auf true fest. Weitere Informationen zur Funktionsweise der Zusammenführung finden Sie unter: https://docs.microsoft.com/en-us/rest/api/searchservice/AddUpdate-or-Delete-Documents

mergeDocuments(TModel[], IndexDocumentsOptions)

Aktualisieren Sie eine Reihe von Dokumenten im Index. Weitere Informationen zur Funktionsweise der Zusammenführung finden Sie unter https://docs.microsoft.com/en-us/rest/api/searchservice/AddUpdate-or-Delete-Documents

mergeOrUploadDocuments(TModel[], IndexDocumentsOptions)

Aktualisieren Sie eine Reihe von Dokumenten im Index, oder laden Sie sie hoch, wenn sie nicht vorhanden sind. Weitere Informationen zur Funktionsweise der Zusammenführung finden Sie unter https://docs.microsoft.com/en-us/rest/api/searchservice/AddUpdate-or-Delete-Documents

search<TFields>(string, SearchOptions<TModel, TFields>)

Führt eine Suche nach dem aktuellen Index unter Berücksichtigung der angegebenen Argumente aus.

Beispiel

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,
});
suggest<TFields>(string, string, SuggestOptions<TModel, TFields>)

Gibt eine kurze Liste von Vorschlägen basierend auf dem searchText und dem angegebenen Vorschlag zurück.

Beispiel

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,
});
uploadDocuments(TModel[], IndexDocumentsOptions)

Laden Sie ein Array von Dokumenten in den Index hoch.

Details zum Konstruktor

SearchClient<TModel>(string, string, KeyCredential | TokenCredential, SearchClientOptions)

Erstellt eine instance von SearchClient.

Beispielverwendung:

const { SearchClient, AzureKeyCredential } = require("@azure/search-documents");

const client = new SearchClient(
  "<endpoint>",
  "<indexName>",
  new AzureKeyCredential("<Admin Key>")
);

Optional kann der Typ des Modells verwendet werden, um starke Eingabe- und Typhinweise zu aktivieren:

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)

Parameter

endpoint

string

Der Endpunkt des Suchdiensts

indexName

string

Der Name des Indexes

credential

KeyCredential | TokenCredential

Wird verwendet, um Anforderungen beim Dienst zu authentifizieren.

options
SearchClientOptions

Wird zum Konfigurieren des Suchclients verwendet.

Details zur Eigenschaft

apiVersion

Warnung

Diese API ist nun veraltet.

use {@Link serviceVersion} instead

Die API-Version, die bei der Kommunikation mit dem Dienst verwendet werden soll.

apiVersion: string

Eigenschaftswert

string

endpoint

Der Endpunkt des Suchdiensts

endpoint: string

Eigenschaftswert

string

indexName

Der Name des Indexes

indexName: string

Eigenschaftswert

string

serviceVersion

Die Dienstversion, die bei der Kommunikation mit dem Dienst verwendet werden soll.

serviceVersion: string

Eigenschaftswert

string

Details zur Methode

autocomplete(string, string, AutocompleteOptions<TModel>)

Geben Sie basierend auf einem teilweisen searchText des Benutzers eine Liste potenzieller Vervollständigungszeichenfolgen basierend auf einem angegebenen Vorschlag zurück.

Beispiel

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>

Parameter

searchText

string

Der Suchtext, auf dem die Ergebnisse der automatischen Vervollständigung basieren sollen.

suggesterName

string

Der Name des Vorschlags, wie er in der Suggesters-Auflistung angegeben ist, die Teil der Indexdefinition ist.

options

AutocompleteOptions<TModel>

Optionen für den Autovervollständigen-Vorgang.

Gibt zurück

deleteDocuments(keyof TModel, string[], IndexDocumentsOptions)

Löschen Sie eine Reihe von Dokumenten.

function deleteDocuments(keyName: keyof TModel, keyValues: string[], options?: IndexDocumentsOptions): Promise<IndexDocumentsResult>

Parameter

keyName

keyof TModel

Der Name des Primärschlüssels im Index.

keyValues

string[]

Die Primärschlüsselwerte der zu löschenden Dokumente.

options
IndexDocumentsOptions

Zusätzliche Optionen.

Gibt zurück

deleteDocuments(TModel[], IndexDocumentsOptions)

Löschen Sie eine Reihe von Dokumenten.

function deleteDocuments(documents: TModel[], options?: IndexDocumentsOptions): Promise<IndexDocumentsResult>

Parameter

documents

TModel[]

Zu löschende Dokumente.

options
IndexDocumentsOptions

Zusätzliche Optionen.

Gibt zurück

getDocument<TFields>(string, GetDocumentOptions<TModel, TFields>)

Rufen Sie ein bestimmtes Dokument aus dem Index nach Schlüssel ab.

function getDocument<TFields>(key: string, options?: GetDocumentOptions<TModel, TFields>): Promise<NarrowedModel<TModel, TFields>>

Parameter

key

string

Der Primärschlüsselwert des Dokuments

options

GetDocumentOptions<TModel, TFields>

Zusätzliche Optionen

Gibt zurück

Promise<NarrowedModel<TModel, TFields>>

getDocumentsCount(OperationOptions)

Ruft die Anzahl der Dokumente im Index ab.

function getDocumentsCount(options?: OperationOptions): Promise<number>

Parameter

options
OperationOptions

Optionen für den Zählungsvorgang.

Gibt zurück

Promise<number>

indexDocuments(IndexDocumentsBatch<TModel>, IndexDocumentsOptions)

Führen Sie eine Reihe von Indexänderungen (upload, merge, mergeOrUpload, delete) für die angegebene Gruppe von Dokumenten aus. Dieser Vorgang kann teilweise erfolgreich sein, und nicht alle Dokumentvorgänge werden im Index widerspiegelt. Wenn Sie dies als Ausnahme behandeln möchten, legen Sie die throwOnAnyFailure Option auf true fest. Weitere Informationen zur Funktionsweise der Zusammenführung finden Sie unter: https://docs.microsoft.com/en-us/rest/api/searchservice/AddUpdate-or-Delete-Documents

function indexDocuments(batch: IndexDocumentsBatch<TModel>, options?: IndexDocumentsOptions): Promise<IndexDocumentsResult>

Parameter

batch

IndexDocumentsBatch<TModel>

Ein Array von Aktionen, die für den Index ausgeführt werden sollen.

options
IndexDocumentsOptions

Zusätzliche Optionen.

Gibt zurück

mergeDocuments(TModel[], IndexDocumentsOptions)

Aktualisieren Sie eine Reihe von Dokumenten im Index. Weitere Informationen zur Funktionsweise der Zusammenführung finden Sie unter https://docs.microsoft.com/en-us/rest/api/searchservice/AddUpdate-or-Delete-Documents

function mergeDocuments(documents: TModel[], options?: IndexDocumentsOptions): Promise<IndexDocumentsResult>

Parameter

documents

TModel[]

Die aktualisierten Dokumente.

options
IndexDocumentsOptions

Zusätzliche Optionen.

Gibt zurück

mergeOrUploadDocuments(TModel[], IndexDocumentsOptions)

Aktualisieren Sie eine Reihe von Dokumenten im Index, oder laden Sie sie hoch, wenn sie nicht vorhanden sind. Weitere Informationen zur Funktionsweise der Zusammenführung finden Sie unter https://docs.microsoft.com/en-us/rest/api/searchservice/AddUpdate-or-Delete-Documents

function mergeOrUploadDocuments(documents: TModel[], options?: IndexDocumentsOptions): Promise<IndexDocumentsResult>

Parameter

documents

TModel[]

Die aktualisierten Dokumente.

options
IndexDocumentsOptions

Zusätzliche Optionen.

Gibt zurück

Führt eine Suche nach dem aktuellen Index unter Berücksichtigung der angegebenen Argumente aus.

Beispiel

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>>

Parameter

searchText

string

Zu durchsuchende Text

options

SearchOptions<TModel, TFields>

Optionen für den Suchvorgang.

Gibt zurück

Promise<SearchDocumentsResult<TModel, TFields>>

suggest<TFields>(string, string, SuggestOptions<TModel, TFields>)

Gibt eine kurze Liste von Vorschlägen basierend auf dem searchText und dem angegebenen Vorschlag zurück.

Beispiel

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>>

Parameter

searchText

string

Der Suchtext, der zum Vorschlag von Dokumenten verwendet werden soll. Er muss zwischen 1 und 100 Zeichen lang sein.

suggesterName

string

Der Name der Vorschlagsfunktion, wie in der Suggesters-Auflistung angegeben, die Teil der Indexdefinition ist.

options

SuggestOptions<TModel, TFields>

Optionen für den Vorschlagsvorgang

Gibt zurück

Promise<SuggestDocumentsResult<TModel, TFields>>

uploadDocuments(TModel[], IndexDocumentsOptions)

Laden Sie ein Array von Dokumenten in den Index hoch.

function uploadDocuments(documents: TModel[], options?: IndexDocumentsOptions): Promise<IndexDocumentsResult>

Parameter

documents

TModel[]

Die hochzuladenden Dokumente.

options
IndexDocumentsOptions

Zusätzliche Optionen.

Gibt zurück