Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Paginação refere-se à prática de dividir um grande conjunto de dados em partes ou páginas menores e gerenciáveis ao entregar os dados a um aplicativo cliente. É uma técnica comum usada para melhorar o desempenho e a eficiência das solicitações de API, especialmente ao lidar com uma grande quantidade de dados. A paginação também é usada para evitar a perda de dados quando há muitos dados para exibir em um bloco.
Como saber se uma API está paginada?
As APIs paginadas do Microsoft Fabric contêm esses parâmetros.
continuationUricontinuationToken
Onde posso encontrar os parâmetros paginados?
A estrutura de uma resposta de API paginada contém os continuationUri parâmetros e continuationToken e tem esta aparência:
{
"value": [
{
"id": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"displayName": "Lakehouse",
"description": "A lakehouse used by the analytics team.",
"type": "Lakehouse",
"workspaceId": "yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy"
},
{
"id": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"displayName": "Notebook",
"description": "A notebook for refining medical data analysis through machine learning algorithms.",
"type": "Notebook",
"workspaceId": "yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy"
}
],
"continuationToken": "ABCsMTAwMDAwLDA%3D",
"continuationUri": "https://api.fabric.microsoft.com/v1/workspaces/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/items?continuationToken=ABCsMTAwMDAwLDA%3D"
}
Como a paginação é usada nas APIs REST de malha?
Quando você faz uma solicitação para uma API paginada, recebe um conjunto de registros, geralmente sob a propriedade value . Os registos incluem os parâmetros continuationUri e continuationToken. Com esses parâmetros, você pode recuperar o próximo conjunto de registros usando um destes métodos:
Use
continuationUripara obter sua próxima solicitação.Use
continuationTokencomo um parâmetro de consulta para criar sua próxima solicitação.
Depois que todos os registros são recuperados, os continuationUri parâmetros e continuationToken são removidos da resposta ou aparecem como nulos.
Exemplo de código
Neste exemplo, cria-se um cliente e chama-se a API para listar espaços de trabalho. O continuationToken parâmetro é usado para obter o próximo bloco paginado de espaços de trabalho, até que ele retorne vazio ou nulo.
using (HttpClient client = new HttpClient())
{
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", "<Your token>");
string continuationToken = null;
var workspaces = new List<Workspace>();
do
{
var requestUrl = "https://api.fabric.microsoft.com/v1/workspaces";
if (!string.IsNullOrEmpty(continuationToken))
{
requestUrl += $"?continuationToken={continuationToken}";
}
HttpResponseMessage response = await client.GetAsync(requestUrl);
if (response.IsSuccessStatusCode)
{
// Parse the response JSON
var responseData = await response.Content.ReadAsStringAsync();
var paginatedResponse = JsonConvert.DeserializeObject<PaginatedResponse<Workspace>>(responseData);
// Append the list of workspaces in the current retrieved page
workspaces.AddRange(paginatedResponse.Value);
// Check if there are more records to retrieve
continuationToken = paginatedResponse.ContinuationToken;
}
else
{
Console.WriteLine($"Error: {response.StatusCode}");
break;
}
} while (!string.IsNullOrEmpty(continuationToken));
}