Varlıkları filtreleme, sıralama ve sayfalama
Uyarı
Azure Media Services 30 Haziran 2024'de kullanımdan kaldırılacaktır. Daha fazla bilgi için bkz. AMS Kullanımdan Kaldırma Kılavuzu.
Bu konuda, Azure Media Services v3 varlıklarını listelerken kullanılabilen OData sorgu seçenekleri ve sayfalandırma desteği açıklanmaktadır.
Dikkat edilmesi gerekenler
- Türdeki varlıkların
Datetime
özellikleri her zaman UTC biçimindedir. - İstek göndermeden önce sorgu dizesindeki boşluk URL ile kodlanmalıdır.
Karşılaştırma işleçleri
Bir alanı sabit değerle karşılaştırmak için aşağıdaki işleçleri kullanabilirsiniz:
Eşitlik işleçleri:
-
eq
: Alanın sabit bir değere eşit olup olmadığını test edin. -
ne
: Alanın sabit bir değere eşit olup olmadığını test edin.
Aralık işleçleri:
-
gt
: Alanın sabit bir değerden büyük olup olmadığını test edin. -
lt
: Alanın sabit bir değerden küçük olup olmadığını test edin. -
ge
: Bir alanın sabit bir değerden büyük veya buna eşit olup olmadığını test edin. -
le
: Bir alanın sabit bir değerden küçük veya buna eşit olup olmadığını test edin.
Filtre
Yalnızca ilgilendiğiniz nesneleri bulmak için bir OData filtre parametresi sağlamak için kullanın $filter
.
Aşağıdaki REST örneği bir varlığın alternateId
değerini filtreler:
GET https://management.azure.com/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/mediaresources/providers/Microsoft.Media/mediaServices/amstestaccount/assets?api-version=2018-07-01&$filter=properties/alternateId%20eq%20'unique identifier'
Aşağıdaki C# örneği varlığın oluşturulma tarihine göre filtrelenir:
var odataQuery = new ODataQuery<Asset>("properties/created lt 2018-05-11T17:39:08.387Z");
var firstPage = await MediaServicesArmClient.Assets.ListAsync(CustomerResourceGroup, CustomerAccountName, odataQuery);
Sipariş ölçütü
Döndürülen nesneleri belirtilen parametreye göre sıralamak için kullanın $orderby
. Örnek:
GET https://management.azure.com/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/mediaresources/providers/Microsoft.Media/mediaServices/amstestaccount/assets?api-version=2018-07-01$orderby=properties/created%20gt%202018-05-11T17:39:08.387Z
Sonuçları artan veya azalan düzende sıralamak için alan adına boşlukla ayırarak veya desc
ekleyinasc
. Örneğin: $orderby properties/created desc
.
Belirteci atla
Sorgu yanıtı çok sayıda öğe içeriyorsa, hizmet bir sonraki sonuç sayfasını almak için kullandığınız bir $skiptoken
(@odata.nextLink
) değeri döndürür. Sonuç kümesinin tamamında sayfalandırmak için bunu kullanın.
Media Services v3'te sayfa boyutunu yapılandıramazsınız. Sayfa boyutu varlığın türüne göre değişir. Ayrıntılar için izleyen bölümleri tek tek okuyun.
Koleksiyonda sayfalama yaparken varlıklar oluşturulur veya silinirse, değişiklikler döndürülen sonuçlara yansıtılır (bu değişiklikler koleksiyonun indirilmemiş bölümündeyse).
İpucu
Koleksiyonu listelemek için her zaman kullanın nextLink
ve belirli bir sayfa boyutuna bağımlı değildir.
Değer nextLink
yalnızca birden fazla varlık sayfası varsa mevcut olur.
Nerede $skiptoken
kullanıldığına ilişkin aşağıdaki örneği göz önünde bulundurun.
amstestaccount değerini hesap adınız ile değiştirdiğinizden ve api-version değerini en son sürüme ayarladığınızdan emin olun.
Aşağıdaki gibi varlıkların listesini isterseniz:
GET https://management.azure.com/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/mediaresources/providers/Microsoft.Media/mediaServices/amstestaccount/assets?api-version=2018-07-01 HTTP/1.1
x-ms-client-request-id: dd57fe5d-f3be-4724-8553-4ceb1dbe5aab
Content-Type: application/json; charset=utf-8
Aşağıdakine benzer bir yanıt alırsınız:
HTTP/1.1 200 OK
{
"value":[
{
"name":"Asset 0","id":"/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/mediaresources/providers/Microsoft.Media/mediaservices/amstestaccount/assets/Asset 0","type":"Microsoft.Media/mediaservices/assets","properties":{
"assetId":"00000000-0000-0000-0000-000000000000","created":"2018-12-11T22:12:44.98Z","lastModified":"2018-12-11T22:15:48.003Z","container":"asset-00000000-0000-0000-0000-0000000000000","storageAccountName":"amsacctname","storageEncryptionFormat":"None"
}
},
// lots more assets
{
"name":"Asset 517","id":"/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/mediaresources/providers/Microsoft.Media/mediaservices/amstestaccount/assets/Asset 517","type":"Microsoft.Media/mediaservices/assets","properties":{
"assetId":"00000000-0000-0000-0000-000000000000","created":"2018-12-11T22:14:08.473Z","lastModified":"2018-12-11T22:19:29.657Z","container":"asset-00000000-0000-0000-0000-000000000000","storageAccountName":"amsacctname","storageEncryptionFormat":"None"
}
}
],"@odata.nextLink":"https:// management.azure.com/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/mediaresources/providers/Microsoft.Media/mediaServices/amstestaccount/assets?api-version=2018-07-01&$skiptoken=Asset+517"
}
Ardından aşağıdakiler için bir get isteği göndererek sonraki sayfayı isteyebilirsiniz:
https://management.azure.com/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/mediaresources/providers/Microsoft.Media/mediaServices/amstestaccount/assets?api-version=2018-07-01&$skiptoken=Asset+517
Aşağıdaki C# örneği, hesaptaki tüm akış bulucuları arasında numaralandırmayı gösterir.
var firstPage = await MediaServicesArmClient.StreamingLocators.ListAsync(CustomerResourceGroup, CustomerAccountName);
var currentPage = firstPage;
while (currentPage.NextPageLink != null)
{
currentPage = await MediaServicesArmClient.StreamingLocators.ListNextAsync(currentPage.NextPageLink);
}
Sorgu seçeneklerini birleştirmek için mantıksal işleçleri kullanma
Media Services v3 , OR ve AND mantıksal işleçlerini destekler.
Aşağıdaki REST örneği işin durumunu denetler:
https://management.azure.com/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/qbtest/providers/Microsoft.Media/mediaServices/qbtest/transforms/VideoAnalyzerTransform/jobs?$filter=properties/state%20eq%20Microsoft.Media.JobState'Scheduled'%20or%20properties/state%20eq%20Microsoft.Media.JobState'Processing'&api-version=2018-07-01
C# içinde aşağıdaki gibi aynı sorguyu oluşturursunuz:
var odataQuery = new ODataQuery<Job>("properties/state eq Microsoft.Media.JobState'Scheduled' or properties/state eq Microsoft.Media.JobState'Processing'");
client.Jobs.List(config.ResourceGroup, config.AccountName, VideoAnalyzerTransformName, odataQuery);
Varlıkları filtreleme ve sıralama seçenekleri
Aşağıdaki tabloda, filtreleme ve sıralama seçeneklerini farklı varlıklara nasıl uygulayabileceğiniz gösterilmektedir:
Varlık adı | Özellik adı | Filtre | Sipariş |
---|---|---|---|
Varlıklar | name |
eq , gt , lt , ge , le |
asc ve desc |
properties/alternateId | eq |
||
properties/assetId | eq |
||
özellikler/oluşturuldu |
eq , gt , lt |
asc ve desc |
|
İçerik anahtarı ilkeleri | name |
eq , ne , ge , le , gt , lt |
asc ve desc |
özellikler/oluşturuldu |
eq , ne , ge , le , gt , lt |
asc ve desc |
|
özellikler/açıklama |
eq , ne , ge , le , gt , lt |
||
properties/lastModified |
eq , ne , ge , le , gt , lt |
asc ve desc |
|
properties/policyId |
eq , ne |
||
İşler | name | eq |
asc ve desc |
özellikler/durum |
eq , ne |
||
özellikler/oluşturuldu |
gt , ge , lt , le |
asc ve desc |
|
properties/lastModified |
gt , ge , lt , le |
asc ve desc |
|
Akış bulucuları | name |
eq , ne , ge , le , gt , lt |
asc ve desc |
özellikler/oluşturuldu |
eq , ne , ge , le , gt , lt |
asc ve desc |
|
properties/endTime |
eq , ne , ge , le , gt , lt |
asc ve desc |
|
Akış ilkeleri | name |
eq , ne , ge , le , gt , lt |
asc ve desc |
özellikler/oluşturuldu |
eq , ne , ge , le , gt , lt |
asc ve desc |
|
Dönüştürmeler | name | eq |
asc ve desc |
özellikler/oluşturuldu |
gt , ge , lt , le |
asc ve desc |
|
properties/lastModified |
gt , ge , lt , le |
asc ve desc |
Yardım ve destek alma
Aşağıdaki yöntemlerden birini kullanarak Media Services ile iletişime geçebilir veya güncelleştirmelerimizi izleyebilirsiniz:
- Q & A
-
Stack Overflow. soruları ile etiketleyin
azure-media-services
. - Destek istemek için @AzureSupport @MSFTAzureMedia veya kullanın.
- Azure portal üzerinden bir destek bileti açın.