共用方式為


SearchClient class

用來對搜尋索引執行作業的類別,包括查詢索引中的檔,以及新增、更新和移除它們。

建構函式

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>(
  ...
);

屬性

apiVersion

與服務通訊時要使用的 API 版本。

endpoint

搜尋服務的端點

indexName

索引的名稱

serviceVersion

與服務通訊時要使用的服務版本。

方法

autocomplete(string, string, AutocompleteOptions<TModel>)

根據使用者的部分 searchText,根據指定的建議工具傳回潛在的完成字串清單。

範例

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)

刪除一組檔。

deleteDocuments(TModel[], IndexDocumentsOptions)

刪除一組檔。

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

依索引鍵從索引擷取特定檔。

getDocumentsCount(OperationOptions)

擷取索引中的檔數目。

indexDocuments(IndexDocumentsBatch<TModel>, IndexDocumentsOptions)

執行一組索引修改, (上傳、合併、mergeOrUpload、刪除指定檔集的) 。 此作業可能會部分成功,而且並非所有的檔作業都會反映在索引中。 如果您想要將此視為例外狀況,請將 throwOnAnyFailure 選項設定為 true。 如需合併運作方式的詳細資訊,請參閱: https://docs.microsoft.com/en-us/rest/api/searchservice/AddUpdate-or-Delete-Documents

mergeDocuments(TModel[], IndexDocumentsOptions)

更新索引中的一組檔。 如需合併運作方式的詳細資訊,請參閱 https://docs.microsoft.com/en-us/rest/api/searchservice/AddUpdate-or-Delete-Documents

mergeOrUploadDocuments(TModel[], IndexDocumentsOptions)

更新索引中的一組檔,如果檔不存在,請加以上傳。 如需合併運作方式的詳細資訊,請參閱 https://docs.microsoft.com/en-us/rest/api/searchservice/AddUpdate-or-Delete-Documents

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

根據 searchText 和指定的建議工具傳回簡短的建議清單。

範例

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)

將檔的陣列上傳至索引。

建構函式詳細資料

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

KeyCredential | TokenCredential

用來驗證對服務的要求。

options
SearchClientOptions

用來設定搜尋用戶端。

屬性詳細資料

apiVersion

警告

此 API 現已淘汰。

use {@Link serviceVersion} instead

與服務通訊時要使用的 API 版本。

apiVersion: string

屬性值

string

endpoint

搜尋服務的端點

endpoint: string

屬性值

string

indexName

索引的名稱

indexName: string

屬性值

string

serviceVersion

與服務通訊時要使用的服務版本。

serviceVersion: string

屬性值

string

方法詳細資料

autocomplete(string, string, AutocompleteOptions<TModel>)

根據使用者的部分 searchText,根據指定的建議工具傳回潛在的完成字串清單。

範例

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>

自動完成作業的選項。

傳回

deleteDocuments(keyof TModel, string[], IndexDocumentsOptions)

刪除一組檔。

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

參數

keyName

keyof TModel

索引中主鍵的名稱。

keyValues

string[]

要刪除之檔的主鍵值。

options
IndexDocumentsOptions

其他選項。

傳回

deleteDocuments(TModel[], IndexDocumentsOptions)

刪除一組檔。

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

參數

documents

TModel[]

要刪除的檔。

options
IndexDocumentsOptions

其他選項。

傳回

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)

執行一組索引修改, (上傳、合併、mergeOrUpload、刪除指定檔集的) 。 此作業可能會部分成功,而且並非所有的檔作業都會反映在索引中。 如果您想要將此視為例外狀況,請將 throwOnAnyFailure 選項設定為 true。 如需合併運作方式的詳細資訊,請參閱: 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

其他選項。

傳回

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

其他選項。

傳回

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

其他選項。

傳回

在指定的引數下,對目前索引執行搜尋。

範例

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

根據 searchText 和指定的建議工具傳回簡短的建議清單。

範例

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

用來建議檔的搜尋文字。 必須至少 1 個字元,而且不能多於 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

其他選項。

傳回