Percorrer os resultados da listagem no Pesquisa de IA do Azure (pré-visualização)

Note

O Pesquisa de IA do Azure está disponível através do portal Azure, APIs REST e SDKs do Azure. Também sustenta o Foundry IQ, a camada de conhecimento gerida que transforma conteúdos empresariais em bases de conhecimento reutilizáveis e conscientes de permissões para agentes no portal Microsoft Foundry.

Importante

Funcionalidades, capacidades ou propriedades assinaladas (pré-visualização) não são abrangidas por um acordo de nível de serviço, não são recomendadas para cargas de trabalho em produção e podem mudar ou ser limitadas antes de se tornarem geralmente disponíveis. Os termos de pré-visualização do Pesquisa de IA do Azure aplicam-se a todas as funcionalidades de pré-visualização, sejam independentes ou parte de uma funcionalidade geralmente disponível.

A partir da 2026-08-01-preview API REST, utilize a paginação do cursor (pré-visualização) para enumerar os recursos suportados uma página de cada vez. O serviço devolve uma URL de continuação opaca quando há mais resultados disponíveis.

Este artigo explica o contrato de cursor e demonstra como folhear índices existentes.

Pré-requisitos

  • O pacote de pré-visualização mais recente Azure.Search.Documents: dotnet add package Azure.Search.Documents --prerelease

  • Para autenticação sem chave, o Azure.Identity pacote: dotnet add package Azure.Identity

    Note

    A biblioteca cliente deve suportar a 2026-08-01-preview versão da API REST do Serviço de Pesquisa. Versões anteriores não expõem os parâmetros do cursor apresentados neste artigo.

  • O pacote de pré-visualização mais recente azure-search-documents: pip install --pre azure-search-documents

  • Para autenticação sem chave, o azure-identity pacote: pip install azure-identity

    Note

    A biblioteca cliente deve suportar a 2026-08-01-preview versão da API REST do Serviço de Pesquisa. Versões anteriores não expõem os parâmetros do cursor apresentados neste artigo.

Escolher uma operação de lista

O 2026-08-01-preview contrato de cursor aplica-se às seguintes operações de lista:

Operation Caminho do recurso
Lista de pseudónimos /aliases
Listar fontes de dados /datasources
Indexadores de Listas /indexers
Índices de Listas /indexes
Estatísticas do Índice da Lista /indexstats
Listar bases de conhecimento /knowledgebases
Lista de Fontes de Conhecimento /knowledgesources
Lista de ficheiros fonte de conhecimento /knowledgesources('{knowledge-source-name}')/files
Listas de Competências /skillsets
Lista de mapas de sinónimos /synonymmaps

Páginas de pedidos e seguimento

O exemplo seguinte lista índices cujos nomes começam com hotels e solicitam até 50 índices por página. Ao iterar sobre o resultado AsyncPageable<SearchIndex>, cada página seguinte é solicitada automaticamente.

using System;
using Azure;
using Azure.Identity;
using Azure.Search.Documents;
using Azure.Search.Documents.Indexes;
using Azure.Search.Documents.Indexes.Models;
using Azure.Search.Documents.Models;

string endpoint = Environment.GetEnvironmentVariable(
    "AZURE_SEARCH_ENDPOINT")!;

var options = new SearchClientOptions(
    SearchClientOptions.ServiceVersion.V2026_08_01_Preview);
var client = new SearchIndexClient(
    new Uri(endpoint),
    new AzureCliCredential(),
    options);

AsyncPageable<SearchIndex> indexes = client.GetIndexesAsync(
    search: "hotels",
    pageSize: 50,
    searchType: ListingSearchType.Prefix);

await foreach (SearchIndex index in indexes)
{
    Console.WriteLine(index.Name);
}

Referência:SearchIndexClient.GetIndexesAsync

O exemplo seguinte lista índices cujos nomes começam com hotels e solicitam até 50 índices por página. Ao iterar sobre o resultado ItemPaged, cada página seguinte é solicitada automaticamente.

import os

from azure.identity import AzureCliCredential
from azure.search.documents.indexes import SearchIndexClient

endpoint = os.getenv("AZURE_SEARCH_ENDPOINT")

with SearchIndexClient(
    endpoint,
    AzureCliCredential(),
    api_version="2026-08-01-preview",
) as client:
    indexes = client.list_indexes(
        select=["name"],
        search="hotels",
        page_size=50,
        search_type="prefix",
    )
    for index in indexes:
        print(index.name)

Referência:SearchIndexClient.list_indexes

Envie um pedido inicial para listar índices cujos nomes começam por hotels. O pedido devolve até 50 nomes de índice:

GET https://<search-service-name>.search.windows.net/indexes?api-version=2026-08-01-preview&search=hotels&searchType=prefix&pageSize=50&$select=name
Authorization: Bearer <access-token>
Accept: application/json

Referência:Listas de Índices

Quando existem mais de 50 índices correspondentes, a resposta inclui @odata.nextLink, que contém a URL de continuação completa e um token opaco. A seguinte resposta é abreviada:

{
  "value": [
    {
      "name": "<index-name>"
    }
  ],
  "@odata.nextLink": "https://<search-service-name>.search.windows.net/indexes?api-version=2026-08-01-preview&searchType=prefix&%24select=name&%24skiptoken=<opaque-token>"
}

Para solicitar a página seguinte, envie um pedido GET para o valor completo @odata.nextLink exatamente tal como foi devolvido. Mantém o mesmo cabeçalho de autenticação:

GET <[email protected]>
Authorization: Bearer <access-token>
Accept: application/json

Referência:Listas de Índices

A resposta terminal contém os nomes finais dos índices e omite @odata.nextLink, indicando que não há mais páginas disponíveis. A ordem dos resultados não faz parte do contrato do cursor:

{
  "value": [
    {
      "name": "<next-index-name>"
    }
  ]
}

Controlar o comportamento do cursor

  • Detetar a última página: Continuar a paginar apenas enquanto a resposta contiver @odata.nextLink. A página do terminal omite esta propriedade, e as respostas não incluem @odata.count.

  • Manter o estado de continuação: Utilize o @odata.nextLink completo exatamente como for devolvido. Não construas, modifiques, descodifiques nem reutilizes o respetivo $skiptoken. O token suporta apenas paginação para a frente.

  • Alterar parâmetros do pedido: Iniciar um novo pedido inicial para alterar o caminho do recurso, versão da API, prefixo de pesquisa, propriedades selecionadas ou tamanho da página. Combinando $skiptoken com search ou pageSize devolve HTTP 400.

  • Tenha em conta as alterações na coleção: A paginação para a frente só é estável enquanto a coleção não sofrer alterações. Adicionar, atualizar ou eliminar recursos durante a enumeração pode produzir resultados duplicados ou omitidos.