Esporta (0) Stampa
Espandi tutto

Connessione a Servizi multimediali con l'API REST di Servizi multimediali

Aggiornamento: gennaio 2015

Sono necessari due elementi quando si accede a Servizi multimediali di Microsoft Azure: un token di accesso fornito dai servizi di controllo di accesso di Azure e l'URI di Servizi multimediali. È possibile procedere come si preferisce per creare queste richieste, purché vengano specificati i valori di intestazione corretti e venga passato correttamente il token di accesso quando si esegue la chiamata in Servizi multimediali.

I seguenti passaggi descrivono i flussi di lavoro comuni relativi all'uso dell'API REST di Servizi multimediali per connettersi a Servizi multimediali:

  1. Reperimento di un token di accesso

  2. Connessione all'URI di Servizi multimediali

    ImportantImportante
    Dopo avere stabilito la connessione a https://media.windows.net, si riceverà un reindirizzamento 301 che indica un altro URI di Servizi multimediali. Le chiamate successive devono essere effettuate al nuovo URI.

    È anche possibile ricevere una risposta HTTP/1.1 200 contenente la descrizione dei metadati dell'API ODATA.

  3. Pubblicare le successive chiamate API al nuovo URL.

    Se, ad esempio, dopo aver tentato la connessione si ottiene la seguente risposta:

    HTTP/1.1 301 Moved Permanently
    Location: https://wamsbayclus001rest-hs.cloudapp.net/api/
    
    
    Si consiglia di pubblicare le successive chiamate API a https://wamsbayclus001rest-hs.cloudapp.net/api/.

Per accedere a Servizi multimediali direttamente dall'API REST, recuperare un token di accesso dai servizi di controllo di accesso e usarlo per ogni richiesta HTTP effettuata nel servizio. Questo token è simile ad altri token forniti dai servizi di controllo di accesso basati sulle attestazioni di accesso fornite nell'intestazione di una richiesta HTTP e che usano il protocollo OAuth versione 2. Non sono necessari altri prerequisiti per connettersi direttamente a Servizi multimediali.

Il seguente esempio illustra l'intestazione e il corpo della richiesta HTTP usati per recuperare un token:

POST https://wamsprodglobal001acs.accesscontrol.windows.net/v2/OAuth2-13 HTTP/1.1
Content-Type: application/x-www-form-urlencoded
Host: wamsprodglobal001acs.accesscontrol.windows.net
Content-Length: 120
Expect: 100-continue
Connection: Keep-Alive

grant_type=client_credentials&client_id=client id value&client_secret=URL-encoded client secret value&scope=urn%3aWindowsAzureMediaServices

ImportantImportante
I valori client_id e client_secret vengono forniti da Servizi multimediali quando si imposta l'account. Corrispondono rispettivamente ai valori AccountName e AccountKey. Per altre informazioni, vedere le istruzioni per l'impostazione di un account di Servizi multimediali. Il valore AccountKey per l'account di Servizi multimediali inoltre deve essere codificato in URL quando viene usato come valore client_secret nella richiesta del token di accesso.

Il seguente esempio illustra la risposta HTTP contenente il token di accesso nel corpo della risposta.

HTTP/1.1 200 OK
Cache-Control: public, no-store, max-age=0
Content-Type: application/json; charset=utf-8
Expires: Fri, 13 Jan 2012 22:40:07 GMT
Last-Modified: Fri, 13 Jan 2012 22:40:07 GMT
Vary: *
Server: Microsoft-IIS/7.5
Set-Cookie: ASP.NET_SessionId=w3mtu2rnxucaz5tvj0iyfm0t; path=/; HttpOnly
X-AspNetMvc-Version: 2.5
X-AspNet-Version: 4.0.30319
X-Powered-By: ASP.NET
X-Content-Type-Options: nosniff
Date: Fri, 13 Jan 2012 22:40:07 GMT
Content-Length: 580

{"access_token":"http%3a%2f%2fschemas.xmlsoap.org%2fws%2f2005%2f05%2fidentity%2fclaims%2fnameidentifier=client_id&http%3a%2f%2fschemas.microsoft.com%2faccesscontrolservice%2f2010%2f07%2fclaims%2fidentityprovider=https%3a%2f%2fwamsprodglobal001acs.accesscontrol.windows.net%2f&Audience=urn%3aWindowsAzureMediaServices&ExpiresOn=1326498007&Issuer=https%3a%2f%2f wamsprodglobal001acs.accesscontrol.windows.net%2f&HMACSHA256=hV1WF7sTe%2ffoHqzK%2ftmnwQY22NRPaDytcOOpC9Nv4DA%3d","token_type":"http://schemas.xmlsoap.org/ws/2009/11/swt-token-profile-1.0","expires_in":"3599","scope":"urn:WindowsAzureMediaServices"}

ImportantImportante
È consigliabile memorizzare i valori "access_token" e "expires_in" in una risorsa di archiviazione esterna. I dati del token potranno quindi essere recuperati dalla risorsa di archiviazione e usati nuovamente nelle chiamate all'API REST di Servizi multimediali. Ciò è particolarmente utile in scenari in cui il token può essere condiviso in modo sicuro tra più processi o computer.

Assicurarsi di monitorare il valore "expires_in" del token di accesso e di aggiornare le chiamate all'API REST con i nuovi token a seconda delle esigenze.

L'URI radice per Servizi multimediali è https://media.windows.net/. Connettersi inizialmente a questo URI. Se si ottiene un reindirizzamento 301 come risposta, effettuare le chiamate successive al nuovo URI. Non usare inoltre la logica di reindirizzamento automatico/collegamento nelle richieste. I corpi delle richieste e i verbi HTTP non verranno inoltrati al nuovo URI.

L'URI radice per il caricamento e il download di file di asset è https://yourstorageaccount.blob.core.windows.net/, dove il nome dell'account di archiviazione è lo stesso usato durante l'impostazione dell'account di Servizi multimediali.

Il seguente esempio di codice illustra come creare un asset in Servizi multimediali. Tenere presente che il meccanismo di autorizzazione effettivo passato nell'intestazione della richiesta è un token di connessione OAuth versione 2.

POST https://media.windows.net/API/Assets HTTP/1.1
Content-Type: application/json;odata=verbose
Accept: application/json;odata=verbose
DataServiceVersion: 3.0
MaxDataServiceVersion: 3.0
x-ms-version: 2.8
Authorization: Bearer http%3a%2f%2fschemas.xmlsoap.org%2fws%2f2005%2f05%2fidentity%2fclaims%2fnameidentifier=youraccountname&urn%3aSubscriptionId=2f84471d-b1ae-4e75-aa09-010f0fc0cf5b&http%3a%2f%2fschemas.microsoft.com%2faccesscontrolservice%2f2010%2f07%2fclaims%2fidentityprovider=https%3a%2f%2fwamsprodglobal001acs.accesscontrol.windows.net%2f&Audience=urn%3aWindowsAzureMediaServices&ExpiresOn=1335602357&Issuer=https%3a%2f%2fwamsprodglobal001acs.accesscontrol.windows.net%2f&HMACSHA256=XQs5T%2fEfdO39%2f0Z9%2fBBkA12%2bbUUEY21YyefWXuRYZlY%3d
Host: media.windows.net
Content-Length: 27
Expect: 100-continue

{"Name" : "NewJSONAsset" }
TipSuggerimento
Per rendere le entità di Servizi multimediali più facilmente individuabili, è possibile usare l'operazione $metadata, che consente di recuperare tutti i tipi validi di entità, le proprietà di entità, le associazioni, le funzioni, le azioni e così via. Il seguente esempio illustra come costruire l'URI: https://media.windows.net/API/$metadata.

Aggiungere "?api-version=2.8" alla fine dell'URI se si desidera visualizzare i metadati in un browser o se nella richiesta non è stata inclusa l'intestazione x-ms-version.

Vedere anche

Mostra:
© 2015 Microsoft