#azure #video-indexer
#azure #видеоиндексатор
Вопрос:
Мы находимся в процессе внедрения видеоиндексатора. Для загрузки видео мы хотели бы использовать метод videoURL вместо загрузки видеофайла. Для этого мы используем URL-адреса видео в нашем хранилище больших двоичных объектов. Для этого требуется токен SAS, поэтому URL-адрес содержит параметры запроса. Однако я не могу предоставить videoURL с параметрами запроса для конечной точки на видеоиндексаторе.
Пример тестового запроса:
https://api.videoindexer.ai/trial/Accounts/MY_ACCOUNT_ID/Videos?accessToken=MY_ACCESS_TOKENamp;name=interviewamp;description=interviewamp;privacy=privateamp;partition=some_partitionamp;indexingPreset=AudioOnlyamp;streamingPreset=NoStreamingamp;videoUrl=https://manualtovideos.blob.core.windows.net/asset-xxxxx/interview.mp4?sp=rlamp;st=2020-12-03T16:48:42Zamp;se=2020-12-04T16:48:42Zamp;sv=2019-12-12amp;sr=bamp;sig=l57dDjKYr...8%253D
Когда я сокращаю URL-адрес большого двоичного объекта с помощью службы сокращения URL-адресов, это работает.
В документах говорится, что мне нужно кодировать URL-адрес videoURL, поэтому я делаю это с помощью encodeURI javascript
Но это не сильно меняет URL-адрес, поскольку он игнорирует ?
‘s и amp;
‘s .
Нужно ли мне как-то кодировать URL-адрес по-другому? Или есть другой способ аутентификации, чтобы я мог использовать URL-адрес большого двоичного объекта без токена sas, поскольку он также находится в Azure?
Ответ №1:
Вам необходимо закодировать URL.
Вы можете увидеть, как он создается с помощью Azure Video Analyzer для портала разработчика мультимедиа в методе загрузки.
Комментарии:
1. Спасибо, но это то, что я делал, используя encodeURI. Обнаружил, что мне нужен encodeURIComponent
Ответ №2:
Так получилось, что мне нужно было использовать encodeURIComponent()
для кодирования параметра videoURL вместо просто encodeURI()
или escape()