Hantera Media Services entiteter med RESTManaging Media Services entities with REST

Microsoft Azure Media Services är en REST-baserad tjänst som bygger på OData v3.Microsoft Azure Media Services is a REST-based service built on OData v3. Du kan lägga till, fråga, uppdatera och ta bort entiteter på ungefär samma sätt som du kan på alla andra OData-tjänster.You can add, query, update, and delete entities in much the same way as you can on any other OData service. Undantag kommer att anropas när det är tillämpligt.Exceptions will be called out when applicable. Mer information om OData finns i dokumentationen för Open data Protocol.For more information on OData, see Open Data Protocol documentation.

Det här avsnittet visar hur du hanterar Azure Media Services entiteter med REST.This topic shows you how to manage Azure Media Services entities with REST.

Anteckning

Från och med 1 april 2017 raderas alla jobbposter i ditt konto som är äldre än 90 dagar automatiskt, tillsammans med deras associerade uppgiftsposter, även om det totala antalet poster är lägre än den maximala kvoten.Starting April 1, 2017, any Job record in your account older than 90 days will be automatically deleted, along with its associated Task records, even if the total number of records is below the maximum quota. Den 1 april 2017 tas till exempel alla jobb poster i ditt konto som är äldre än 31 december 2016 bort automatiskt.For example, on April 1, 2017, any Job record in your account older than December 31, 2016, will be automatically deleted. Om du behöver arkivera jobb-/uppgifts informationen kan du använda koden som beskrivs i det här avsnittet.If you need to archive the job/task information, you can use the code described in this topic.

ÖvervägandenConsiderations

När du använder entiteter i Media Services måste du ange vissa huvud fält och värden i dina HTTP-begäranden.When accessing entities in Media Services, you must set specific header fields and values in your HTTP requests. Mer information finns i installations programmet för Media Services REST API-utveckling.For more information, see Setup for Media Services REST API Development.

Anslut till MedietjänsterConnect to Media Services

Information om hur du ansluter till AMS-API: et finns i komma åt Azure Media Services-API med Azure AD-autentisering.For information on how to connect to the AMS API, see Access the Azure Media Services API with Azure AD authentication.

Lägger till entiteterAdding entities

Varje entitet i Media Services läggs till i en enhets uppsättning, till exempel till gångar, via en POST-HTTP-begäran.Every entity in Media Services is added to an entity set, such as Assets, through a POST HTTP request.

I följande exempel visas hur du skapar en Access policy.The following example shows how to create an AccessPolicy.

POST https://media.windows.net/API/AccessPolicies HTTP/1.1
Content-Type: application/json;odata=verbose
Accept: application/json;odata=verbose
DataServiceVersion: 3.0
MaxDataServiceVersion: 3.0
x-ms-version: 2.17
Authorization: Bearer <ENCODED JWT TOKEN> 
Host: media.windows.net
Content-Length: 74
Expect: 100-continue

{"Name": "DownloadPolicy", "DurationInMinutes" : "300", "Permissions" : 1}

Fråga entiteterQuerying entities

Att fråga och lista entiteter är enkelt och inbegriper bara en GET HTTP-begäran och valfria OData-åtgärder.Querying and listing entities is straightforward and only involves a GET HTTP request and optional OData operations. I följande exempel hämtas en lista över alla MediaProcessor-entiteter.The following example retrieves a list of all MediaProcessor entities.

GET https://media.windows.net/API/MediaProcessors HTTP/1.1
Content-Type: application/json;odata=verbose
Accept: application/json;odata=verbose
DataServiceVersion: 3.0
MaxDataServiceVersion: 3.0
x-ms-version: 2.17
Authorization: Bearer <ENCODED JWT TOKEN> 
Host: media.windows.net

Du kan också hämta en speciell entitet eller alla enhets uppsättningar som är associerade med en speciell entitet, till exempel i följande exempel:You can also retrieve a specific entity or all entity sets associated with a specific entity, such as in the following examples:

GET https://media.windows.net/API/JobTemplates('nb:jtid:UUID:e81192f5-576f-b247-b781-70a790c20e7c') HTTP/1.1
Content-Type: application/json;odata=verbose
Accept: application/json;odata=verbose
DataServiceVersion: 3.0
MaxDataServiceVersion: 3.0
x-ms-version: 2.17
Authorization: Bearer <ENCODED JWT TOKEN> 
Host: media.windows.net

GET https://media.windows.net/API/JobTemplates('nb:jtid:UUID:e81192f5-576f-b247-b781-70a790c20e7c')/TaskTemplates HTTP/1.1
Content-Type: application/json;odata=verbose
Accept: application/json;odata=verbose
DataServiceVersion: 3.0
MaxDataServiceVersion: 3.0
x-ms-version: 2.17
Authorization: Bearer <ENCODED JWT TOKEN> 
Host: media.windows.net

I följande exempel returneras endast egenskapen state för alla jobb.The following example returns only the State property of all Jobs.

GET https://media.windows.net/API/Jobs?$select=State HTTP/1.1
Content-Type: application/json;odata=verbose
Accept: application/json;odata=verbose
DataServiceVersion: 3.0
MaxDataServiceVersion: 3.0
x-ms-version: 2.17
Authorization: Bearer <ENCODED JWT TOKEN> 
Host: media.windows.net

I följande exempel returneras alla JobTemplates med namnet "SampleTemplate".The following example returns all JobTemplates with the name "SampleTemplate."

GET https://media.windows.net/API/JobTemplates?$filter=startswith(Name,%20'SampleTemplate') HTTP/1.1
Content-Type: application/json;odata=verbose
Accept: application/json;odata=verbose
DataServiceVersion: 3.0
MaxDataServiceVersion: 3.0
x-ms-version: 2.17
Authorization: Bearer <ENCODED JWT TOKEN> 
Host: media.windows.net

Anteckning

$Expand åtgärden stöds inte i Media Services och de LINQ-metoder som inte stöds beskrivs i LINQ-överväganden (WCF Data Services).The $expand operation is not supported in Media Services as well as the unsupported LINQ methods described in LINQ Considerations (WCF Data Services).

Räkna upp genom stora samlingar av entiteterEnumerating through large collections of entities

När du frågar entiteter, finns det en gräns på 1000 entiteter som returneras vid en tidpunkt eftersom offentliga REST v2 begränsar frågeresultat till 1000-resultat.When querying entities, there is a limit of 1000 entities returned at one time because public REST v2 limits query results to 1000 results. Använd Skip och Top för att räkna upp genom den stora mängden av entiteter.Use skip and top to enumerate through the large collection of entities.

I följande exempel visas hur du använder Skip och Top för att hoppa över de första 2000 jobben och hämta nästa 1000-jobb.The following example shows how to use skip and top to skip the first 2000 jobs and get the next 1000 jobs.

GET https://media.windows.net/api/Jobs()?$skip=2000&$top=1000 HTTP/1.1
Content-Type: application/json;odata=verbose
Accept: application/json;odata=verbose
DataServiceVersion: 3.0
MaxDataServiceVersion: 3.0
x-ms-version: 2.17
Authorization: Bearer <ENCODED JWT TOKEN>
Host: media.windows.net

Uppdaterar entiteterUpdating entities

Beroende på entitetstypen och det tillstånd som den finns i, kan du uppdatera egenskaperna för den entiteten via en korrigerings fil, skicka eller slå samman HTTP-begäranden.Depending on the entity type and the state that it is in, you can update properties on that entity through a PATCH, PUT, or MERGE HTTP requests. Mer information om de här åtgärderna finns i korrigering/Lägg/slå samman.For more information about these operations, see PATCH/PUT/MERGE.

I följande kod exempel visas hur du uppdaterar namn-egenskapen på en till gångs enhet.The following code example shows how to update the Name property on an Asset entity.

MERGE https://media.windows.net/API/Assets('nb:cid:UUID:80782407-3f87-4e60-a43e-5e4454232f60') HTTP/1.1
Content-Type: application/json;odata=verbose
Accept: application/json;odata=verbose
DataServiceVersion: 3.0
MaxDataServiceVersion: 3.0
x-ms-version: 2.17
Authorization: Bearer <ENCODED JWT TOKEN>
Host: media.windows.net
Content-Length: 21
Expect: 100-continue

{"Name" : "NewName" }

Tar bort entiteterDeleting entities

Entiteter kan tas bort i Media Services med en HTTP-begäran borttagning.Entities can be deleted in Media Services by using a DELETE HTTP request. Beroende på entiteten kan det vara viktigt i vilken ordning du tar bort entiteter.Depending on the entity, the order in which you delete entities may be important. Till exempel kräver entiteter som till gångar att du återkallar (eller tar bort) alla positionerare som refererar till en viss till gång innan du tar bort till gången.For example, entities such as Assets require that you revoke (or delete) all Locators that reference that particular Asset before deleting the Asset.

I följande exempel visas hur du tar bort en positionerare som användes för att överföra en fil till Blob Storage.The following example shows how to delete a Locator that was used to upload a file into blob storage.

DELETE https://media.windows.net/API/Locators('nb:lid:UUID:76dcc8e8-4230-463d-97b0-ce25c41b5c8d') HTTP/1.1
Content-Type: application/json;odata=verbose
Accept: application/json;odata=verbose
DataServiceVersion: 3.0
MaxDataServiceVersion: 3.0
x-ms-version: 2.17
Authorization: Bearer <ENCODED JWT TOKEN>
Host: media.windows.net
Content-Length: 0

Sökvägar för Media Services-utbildningMedia Services learning paths

Media Services v3 (senaste)Media Services v3 (latest)

Kolla in den senaste versionen av Azure Media Services!Check out the latest version of Azure Media Services!

Media Services v2 (bakåtkompatibelt)Media Services v2 (legacy)

Ge feedbackProvide feedback

Använd User Voice-forumet för att ge feedback och förslag på hur Azure Media Services kan förbättras.Use the User Voice forum to provide feedback and make suggestions on how to improve Azure Media Services. Du kan även gå direkt till någon av följande kategorier:You also can go directly to one of the following categories: