Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
GraphQL'de ile
Sayfa boyutunu sınırlamak, büyük veri kümelerini sorgularken istemcilerin veya sunucuların aşırı olmasını önler. GraphQL'de, Veri API oluşturucusu (DAB) bağımsız değişkenini first kullanarak tek bir yanıtta kaç kaydın döndürüleceklerini denetler. DAB, imleç tabanlı sayfalandırmayı dahili olarak uygular, ancak first yalnızca sonuç boyutunu büyük harfe döndürmek için bağımsız olarak kullanılabilir.
Uyarı
first döndürülen kayıtların sayısını sınırlar, ancak devamlılığı kendisi işlemez. Birden çok sayfa için kullanın after.
Bu belgenin REST sürümüne gidin.
Genel Bakış
| Konsept | Description |
|---|---|
| Varsayılan sayfa boyutu |
runtime.pagination.default-page-size (varsayılan değer 100'dır) |
| En büyük sayfa boyutu |
runtime.pagination.max-page-size (varsayılan değer: 100000) |
| İstemci geçersiz kılma | first |
| Maksimum istekte bulunma | Yapılandırılan en büyük sayfa boyutunu istemek için geçir -1 |
Atlanırsa first , varsayılan sayfa boyutu otomatik olarak uygulanır.
Kullanım düzeni
query {
books(first: N) {
items { id title }
}
}
Example
Sonuçları beş kitapla sınırlayın.
query {
books(first: 5) {
items {
id
title
}
}
}
Kavramsal SQL
SELECT TOP (5)
id,
sku_title AS title
FROM dbo.books
ORDER BY id ASC;
Örnek yanıt
{
"data": {
"books": {
"items": [
{ "id": 1, "title": "Dune" },
{ "id": 2, "title": "Foundation" },
{ "id": 3, "title": "Hyperion" },
{ "id": 4, "title": "I, Robot" },
{ "id": 5, "title": "The Martian" }
]
}
}
}
Doğrulama kuralları
| Veri Girişi | Result |
|---|---|
| Atla | Kullanır default-page-size |
| Pozitif tamsayı ≤ maksimum | Kabul edildi |
-1 |
Genişletilmiş: max-page-size |
0 |
Hata (geçersiz) |
< -1 |
Hata |
> max-page-size |
Hata |
Örnek hata iletisi
Invalid number of items requested, first argument must be either -1 or a positive number within the max page size limit of 100000. Actual value: 0
Örnek yapılandırma
{
"runtime": {
"pagination": {
"default-page-size": 100,
"max-page-size": 100000
}
},
"entities": {
"Book": {
"source": {
"type": "table",
"object": "dbo.books"
},
"mappings": {
"sku_title": "title",
"sku_price": "price"
},
"relationships": {
"book_category": {
"cardinality": "one",
"target.entity": "Category",
"source.fields": [ "category_id" ],
"target.fields": [ "id" ]
}
}
},
"Category": {
"source": {
"type": "table",
"object": "dbo.categories"
},
"relationships": {
"category_books": {
"cardinality": "many",
"target.entity": "Book",
"source.fields": [ "id" ],
"target.fields": [ "category_id" ]
}
}
}
}
}
Ayrıca bakınız
| Konsept | REST | GraphQL | Amaç |
|---|---|---|---|
| Projection | $select | items | Döndürülecek alanları seçme |
| Filtering | $filter | filtre | Satırları koşula göre kısıtlama |
| Sıralama | $orderby | orderBy | Sıralama düzenini tanımlama |
| Sayfa Boyutu | $first | first | Sayfa başına öğe sayısını sınırlama |
| Devam | $after | sonra | İmleç kullanarak son sayfadan devam et |
Uyarı
REST anahtar sözcükleri, OData kurallarını izleyerek ile $başlar.