Поделиться через


Locator

Locator предоставляет точку входа для доступа к файлам, содержащимся в активе. AccessPolicy используется для определения разрешений и длительности доступа клиента к определенному ресурсу. Локаторы могут иметь множество или одну связь с AccessPolicy таким образом, чтобы разные локаторы могли обеспечивать разное время запуска и типы подключения к различным клиентам с использованием одних параметров разрешения и продолжительности. Однако из-за ограничений общей политики доступа, установленных службами хранилища Azure, нельзя одновременно связать с определенным ресурсом более пяти локаторов. Дополнительные сведения см. в статье Использование подписанного URL-адреса (REST API).

Часто необходимо преобразовать URI Locator с целью доступа к различным форматам файла. Например, свойство Path локатора SAS предоставляет доступ к контейнеру. Для доступа к файлам необходимо встроить имя файла между узлом и подписью SAS. При работе с указателями OnDemandOrigin свойство не используется, Path пока в него не будет добавлена часть протокола.

Создание и обновление локатора определяются следующими правилами:

  1. Локаторы URL-адреса подписи доступа (SAS), используемые с политиками AccessPolicy, которые определяют разрешения на чтение, а также локаторы источника, нельзя использовать, пока файлы не будут переданы в ресурс. Локаторы URL-адреса SAS, которые используются для загрузки или передачи файлов, можно создавать до передачи файлов, только если они используются с политиками AccessPolicy, которые указывают разрешения на запись.

  2. Нельзя обновлять локаторы URL-адреса SAS после создания. Однако, другие типы локаторов, например, локатор источника, можно обновлять значениями StartTime.

  3. URL-адреса указателей SAS будут изменяться при каждом обновлении ключей хранилища связанной учетной записи хранения. Дополнительные сведения см. в разделе Практическое руководство. Обновление служб мультимедиа после смены ключей доступа к хранилищу.

  4. Задержка между моментом создания сущности Locator и моментом, когда ее можно начинать использовать, может составлять 30-40 секунд. Эта проблема возникает как для локаторов URL-адресов SAS, так и для OnDemandOrigin.

Примечание

Локаторы не предназначены для управления доступом отдельных пользователей. Для предоставления различных прав доступа отдельным пользователям используйте решения для управления цифровыми правами (DRM).

В этой статье представлен обзор сущности Locator , а также показано, как выполнять различные операции с помощью REST API Служб мультимедиа.

Важно!

При доступе к сущностям в службах мультимедиа необходимо задать определенные поля и значения заголовков в HTTP-запросах.
Дополнительные сведения см. в разделе Настройка разработки REST API Служб мультимедиа и подключение к службам мультимедиа с помощью REST API Служб мультимедиа.

Свойства сущности «Локатор»

Свойство Тип Описание
Id

Необязательный элемент. Нельзя обновить после создания сущности.
Edm.String Уникальный идентификатор, заданный Службами мультимедиа.
Name

Необязательный элемент.
Edm.String Название локатора. Максимальная длина — 4000.
ExpirationDateTime

Доступный только на запись. Для обновления значения ExpirationDateTime используйте HTTP-запрос MERGE.
Edm.DateTime Значение (представляющее собой число в миллисекундах с полуночи 1 января 1970 года), когда локатор нельзя больше использовать для доступа к указанному ресурсу.

ExpirationDateTime должно иметь следующий формат DateTime: YYYY-MM-DDTHH:mm:ssZ (например, "2014-05-23T17:53:50Z").
Type

Обязательный. Нельзя обновить после создания сущности.
Edm.Int32 Значение перечисления, которое описывает тип локатора. Допустимые значения:

- None = 0: это значение перечисления по умолчанию. У допустимых локаторов не будет такого типа
- SAS = 1: указывает тип указателя подписанного URL-адреса (SAS).
- OnDemandOrigin = 2: указывает тип указателя, который ссылается на конечную точку потоковой передачи источника по запросу Службы мультимедиа Azure.
Path

Только для чтения. Задается Media Services.
Edm.String URL-адрес, используемый для доступа к ресурсным файлам.
BaseUri

Только для чтения. Задается Media Services.
Edm.String Часть локатора, которая предоставляет сведения о хранилище/службе/контейнере ресурса. (например, имя http://someservice.cloudapp.netузла DNS)
ContentAccessComponent

Только для чтения. Задается Media Services.
Edm.String Часть URI, необходимая для доступа к содержимому. Расположение этого маркера в конечном URL-адресе носителя зависит от типа указателя, типа носителя и службы потоковой передачи.
AccessPolicyId

Только для чтения. Задается Media Services.
Edm.String Идентификатор AccessPolicy, определяющий разрешения и длительность для URL-адреса указателя.

Разрешение List не следует использовать при создании указателей OnDemandOrigin.
AssetId

Только для чтения. Задается Media Services.
Edm.String Идентификатор ресурса, содержащего содержимое, к которому вы хотите предоставить доступ.
StartTime

Необязательный элемент.
Edm.DateTime Дата и время, когда локатор станет доступен для использования клиентами. Совет: Если вам нужно немедленно отправить файлы, задайте для параметра StartTime значение за пять минут до текущего времени. Это необходимо из-за возможного расхождения в показаниях часов на клиентском компьютере и в службах мультимедиа. Кроме того, значение StartTime должно иметь следующий формат DateTime: YYYY-MM-DDTHH:mm:ssZ (например, "2014-05-23T17:53:50Z").
AssetPolicy

Только для чтения. Задается Media Services.
Набор объектов AssetPolicy Свойство навигации для экземпляра AccessPolicy.
Asset

Только для чтения. Задается Media Services.
Набор объектов Asset Свойство навигации для экземпляра ресурса.

Создание локатора

Локаторы могут быть созданы с помощью HTTP-запроса POST.

Метод Универсальный код ресурса (URI) запроса Версия HTTP
POST <https:// accountname.restv2>.<location.media.azure.net/api/Locators> HTTP/1.1

Примечание

URL-адреса указателей SAS будут изменяться при каждом обновлении ключей хранилища связанной учетной записи хранения. Дополнительные сведения см. в разделе Практическое руководство. Обновление служб мультимедиа после смены ключей доступа к хранилищу.

Пример запроса

Сведения о том, как получить последнюю версию x-ms-version:, см. в разделе REST Служб мультимедиа.

POST https://<accountname>.restv2.<location>.media.azure.net/api/Locators HTTP/1.1  
Content-Type: application/json;odata=verbose  
Accept: application/json;odata=verbose  
DataServiceVersion: 3.0  
MaxDataServiceVersion: 3.0  
x-ms-version: 2.19  
Authorization: Bearer <token value>  
Host: media.windows.net  
Content-Length: 182  
Expect: 100-continue  
  
{"AccessPolicyId": "nb:pid:UUID:25544a8f-8ccf-43b1-a188-2a860b35bffa", "AssetId" : "nb:cid:UUID:d062e5ef-e496-4f21-87e7-17d210628b7c", "StartTime" : "2014-05-17T16:45:53", "Type":1}  

Дополнительные сведения см. в статье Доставка ресурсов с помощью REST API Служб мультимедиа.

Перечисление локаторов

Локаторы можно получить с помощью HTTP-запроса GET.

Метод Универсальный код ресурса (URI) запроса Версия HTTP
GET GET https://< accountname.restv2>.<location.media.azure.net/api/Locators> HTTP/1.1
Метод Универсальный код ресурса (URI) запроса Версия HTTP
GET <https:// accountname.restv2>.<location.media.azure.net/api/Locators>('locatorid') HTTP/1.1
Метод Универсальный код ресурса (URI) запроса Версия HTTP
GET <https:// accountname.restv2>.<location.media.azure.net/api/Assets>('assetid')/Locators HTTP/1.1

Пример запроса

Сведения о том, как получить последнюю версию x-ms-version:, см. в разделе REST Служб мультимедиа.

GET https://<accountname>.restv2.<location>.media.azure.net/api/Locators('nb:lid:UUID:627cbafb-3d81-4623-97c2-2194282b6d16') HTTP/1.1  
Content-Type: application/json;odata=verbose  
Accept: application/json;odata=verbose  
DataServiceVersion: 3.0  
MaxDataServiceVersion: 3.0  
x-ms-version: 2.19  
Authorization: Bearer <token value>  
Host: media.windows.net  

Обновление локатора

Исходные локаторы можно обновить с помощью HTTP-запроса MERGE.

Метод Универсальный код ресурса (URI) запроса Версия HTTP
MERGE <https:// accountname.restv2>.<location.media.azure.net/api/Locators>('locatorid') HTTP/1.1

Пример запроса

Сведения о том, как получить последнюю версию x-ms-version:, см. в разделе REST Служб мультимедиа.

MERGE https://<accountname>.restv2.<location>.media.azure.net/api/Locators('nb:lid:UUID:5bfcb65d-843d-4d5e-bf71-9306ecb08203') HTTP/1.1  
Content-Type: application/json;odata=verbose  
Accept: application/json;odata=verbose  
DataServiceVersion: 3.0  
MaxDataServiceVersion: 3.0  
x-ms-version: 2.19  
Authorization: Bearer <token value>  
Host: media.windows.net  
Content-Length: 38  
Expect: 100-continue  
  
{"StartTime" : "2014-05-17T16:45:53"}  

Удаление локатора

Удалить локаторы можно с помощью HTTP-запроса DELETE.

Метод Универсальный код ресурса (URI) запроса Версия HTTP
DELETE <https:// accountname.restv2>.<location.media.azure.net/api/Locators>('locatorid') HTTP/1.1

Пример запроса

Сведения о том, как получить последнюю версию x-ms-version:, см. в разделе REST Служб мультимедиа.

DELETE https://<accountname>.restv2.<location>.media.azure.net/api/Locators('nb:lid:UUID:9f0e0cee-8ea5-46c4-b985-5a7cd30e7623') HTTP/1.1  
Content-Type: application/json;odata=verbose  
Accept: application/json;odata=verbose  
DataServiceVersion: 3.0  
MaxDataServiceVersion: 3.0  
x-ms-version: 2.19  
Authorization: Bearer <token value>  
Host: media.windows.net  
Content-Length: 0  
Connection: Keep-Alive  

См. также:

Доставка ресурсов с помощью API REST служб мультимедиа
ContentKey
Ресурс
AccessPolicy
AssetFile
JobTemplate
Задание
MediaProcessor
Задача
TaskTemplate
Квоты и ограничения