Return URL 从定位器将 Azure 媒体服务流式传输到 C# 中的控制器

Return URL from Locator streaming of Azure Media Service into Controller in C#

我已经在 Azure 媒体服务中对我的视频进行了编码,我想请求 url 到我的控制器 (C#) 中。 我检查了 Microsoft 站点以从 https://docs.microsoft.com/en-us/rest/api/media/operations/locator#list_locators

获取 url

这是代码:

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.11  
Authorization: Bearer http%3a%2f%2fschemas.xmlsoap.~~~~
Host: media.windows.net  

任何人都知道如何在我的 C# 控制器中使用此代码,这样我就可以 return 视频的 url?

我注意到的几个问题:

1) 您的授权:不记名令牌看起来像旧的 ACS 版本 - 确保您使用的是 AAD 身份验证和 JWT 令牌。请参阅 REST API 中有关 AAD 身份验证支持的文档。

2) 要获得定位器,查看我在此处创建的 REST API Postman Collection 可能会很方便 - https://docs.microsoft.com/en-us/azure/media-services/postman-collection

这应该会向您展示如何创建和获取流媒体定位器。

这里还有一篇介绍使用 REST API 进行基本流式传输的文章 -https://docs.microsoft.com/en-us/azure/media-services/media-services-rest-deliver-streaming-content

注意:该文档页面仍然具有旧式授权 header。不要复制 header。您将需要像这样使用 Auth Header:

授权:持有者{{ENCODED JWT TOKEN}}

有关如何为 AAD 获取 JWT 令牌的完整演练在此处:https://docs.microsoft.com/en-us/azure/media-services/media-services-rest-connect-with-aad 但您也可以使用我的 Postman collection 作为一个不错的快速入门。