Locator
Locator
предоставляет точку входа для доступа к файлам, содержащимся в активе. AccessPolicy используется для определения разрешений и длительности доступа клиента к определенному ресурсу. Локаторы могут иметь множество или одну связь с AccessPolicy таким образом, чтобы разные локаторы могли обеспечивать разное время запуска и типы подключения к различным клиентам с использованием одних параметров разрешения и продолжительности. Однако из-за ограничений общей политики доступа, установленных службами хранилища Azure, нельзя одновременно связать с определенным ресурсом более пяти локаторов. Дополнительные сведения см. в статье Использование подписанного URL-адреса (REST API).
Часто необходимо преобразовать URI Locator
с целью доступа к различным форматам файла. Например, свойство Path
локатора SAS предоставляет доступ к контейнеру. Для доступа к файлам необходимо встроить имя файла между узлом и подписью SAS. При работе с указателями OnDemandOrigin свойство не используется, Path
пока в него не будет добавлена часть протокола.
Создание и обновление локатора определяются следующими правилами:
Локаторы URL-адреса подписи доступа (SAS), используемые с политиками AccessPolicy, которые определяют разрешения на чтение, а также локаторы источника, нельзя использовать, пока файлы не будут переданы в ресурс. Локаторы URL-адреса SAS, которые используются для загрузки или передачи файлов, можно создавать до передачи файлов, только если они используются с политиками AccessPolicy, которые указывают разрешения на запись.
Нельзя обновлять локаторы URL-адреса SAS после создания. Однако, другие типы локаторов, например, локатор источника, можно обновлять значениями StartTime.
URL-адреса указателей SAS будут изменяться при каждом обновлении ключей хранилища связанной учетной записи хранения. Дополнительные сведения см. в разделе Практическое руководство. Обновление служб мультимедиа после смены ключей доступа к хранилищу.
Задержка между моментом создания сущности 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
Квоты и ограничения