Σημείωση
Η πρόσβαση σε αυτή τη σελίδα απαιτεί εξουσιοδότηση. Μπορείτε να δοκιμάσετε να συνδεθείτε ή να αλλάξετε καταλόγους.
Η πρόσβαση σε αυτή τη σελίδα απαιτεί εξουσιοδότηση. Μπορείτε να δοκιμάσετε να αλλάξετε καταλόγους.
Η σελιδοποίηση αναφέρεται στην πρακτική της διάσπασης ενός μεγάλου συνόλου δεδομένων σε μικρότερα, διαχειρίσιμα τμήματα ή σελίδες κατά την παράδοση των δεδομένων σε μια εφαρμογή προγράμματος-πελάτη. Είναι μια κοινή τεχνική που χρησιμοποιείται για τη βελτίωση της απόδοσης και της αποτελεσματικότητας των αιτήσεων API, ειδικά όταν αντιμετωπίζετε μεγάλο όγκο δεδομένων. Η σελιδοποίηση χρησιμοποιείται επίσης για την αποφυγή απώλειας δεδομένων όταν υπάρχουν πάρα πολλά δεδομένα για εμφάνιση σε ένα τμήμα.
Πώς μπορώ να γνωρίζω εάν ένα API είναι σελιδοποιημένου;
Τα σελιδοποιημένα API του Microsoft Fabric περιέχουν αυτές τις παραμέτρους.
continuationUricontinuationToken
Πού μπορώ να βρω τις σελιδοποιημένες παραμέτρους;
Η δομή μιας σελιδοποιημένης απόκρισης API περιέχει τις continuationUri και continuationToken παραμέτρους και μοιάζει κάπως έτσι:
{
"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"
}
Πώς χρησιμοποιείται η σελιδοποίηση στα API REST Fabric;
Όταν κάνετε μια αίτηση σε ένα σελιδοποιημένο API, λαμβάνετε ένα σύνολο εγγραφών, συνήθως κάτω από την ιδιότητα τιμής. Οι εγγραφές περιλαμβάνουν τις continuationUri και continuationToken παραμέτρους. Με αυτές τις παραμέτρους, μπορείτε να ανακτήσετε το επόμενο σύνολο εγγραφών χρησιμοποιώντας μία από αυτές τις μεθόδους:
Χρησιμοποιήστε
continuationUriγια να λάβετε την επόμενη αίτησή σας.Χρησιμοποιήστε
continuationTokenως παράμετρο ερωτήματος για να δημιουργήσετε την επόμενη αίτησή σας.
Μόλις ανακτηθούν όλες οι εγγραφές, οι παράμετροι continuationUri και continuationToken καταργούνται από την απόκριση ή εμφανίζονται ως null.
Παράδειγμα κώδικα
Σε αυτό το παράδειγμα, δημιουργείτε ένα πρόγραμμα-πελάτη και καλείτε τους χώρους εργασίας λίστας API. Η παράμετρος continuationToken χρησιμοποιείται για τη λήψη του επόμενου σελιδοποιημένου τμήματος χώρων εργασίας, μέχρι να επιστρέψει κενό ή null.
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));
}