Динамическая переменная в заголовках аутентификации — Фабрика данных Azure

У меня есть поток ADF, в котором я сначала получаю токен Oauth 2.0, который затем следует использовать в запросе Odata. Это отлично работает, если я сначала извлеку токен, а затем жестко запрограммирую его в заголовках аутентификации (Bearer xxxxxxxx).

Однако я хочу использовать переменную, которую я установил ранее в потоке, в этом значении. Например, «Предъявитель [переменная]». Я пробовал следующее: "Bearer @variables('Token')", но это не работает. Я дважды проверил, и переменная «Токен» получает правильное значение токена, поэтому это не должно быть проблемой.

введите здесь описание изображения

Итак, мой вопрос: можно ли использовать переменные в разделе заголовка Auth?

Я попытался использовать «Bearer @variables («Token»)» в поле «Значение» для заголовков аутентификации. Это не работает, к сожалению.

возможно, вам придется использовать @concat('Bearer ', variable('Token')) , убедитесь, что у вас есть пробел после Bearer.

Scott Mildenberger 21.11.2022 15:54

@ScottMildenberger Когда я использую это как значение заголовка аутентификации, я получаю эту ошибку: ErrorCode=ODataFailedClientCreation,'Type=Microsoft.DataTran‌​sfer.Common.Shared.H‌​ybridDeliveryExcepti‌​on,Message=Failed to create odata connection to RequestUrl.,Source =Microsoft.DataTransfer.Runtime.ODataConne‌​ctor, ''Type=System.F‌​ormatException,Messa‌​ge=формат значения '@concat('Bearer', variable('Token'))' недействителен.,Источник =Система.Net.Http

munksjon 21.11.2022 16:11

Кажется, что ADF не нравится динамический контент в значении заголовка Auth.

munksjon 21.11.2022 16:12

Вы пытаетесь сделать это в самой связанной службе? Я предполагаю, потому что это единственное изображение, которое вы показываете. Это должен быть параметр связанной службы, который задается при ее использовании.

Scott Mildenberger 21.11.2022 16:31
Шаблоны Angular PrimeNg
Шаблоны Angular PrimeNg
Как привнести проверку типов в наши шаблоны Angular, использующие компоненты библиотеки PrimeNg, и настроить их отображение с помощью встроенной...
Создайте ползком, похожим на звездные войны, с помощью CSS и Javascript
Создайте ползком, похожим на звездные войны, с помощью CSS и Javascript
Если вы веб-разработчик (или хотите им стать), то вы наверняка гик и вам нравятся "Звездные войны". А как бы вы хотели, чтобы фоном для вашего...
Документирование API с помощью Swagger на Springboot
Документирование API с помощью Swagger на Springboot
В предыдущей статье мы уже узнали, как создать Rest API с помощью Springboot и MySql .
Начала с розового дизайна
Начала с розового дизайна
Pink Design - это система дизайна Appwrite с открытым исходным кодом для создания последовательных и многократно используемых пользовательских...
Шлюз в PHP
Шлюз в PHP
API-шлюз (AG) - это сервер, который действует как единая точка входа для набора микросервисов.
14 Задание: Типы данных и структуры данных Python для DevOps
14 Задание: Типы данных и структуры данных Python для DevOps
проверить тип данных используемой переменной, мы можем просто написать: your_variable=100
0
4
87
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Я воспроизвел то же самое в своей среде и получил этот результат

  • Создайте веб-активность и сгенерируйте токен носителя с образцом URL-адреса и создайте переменную параметра с именем Token

enter image description here

  • Создайте заданную переменную и используйте это значение динамического содержимого @activity('Web1').output.data.Token

enter image description here

* Затем я создал действие копирования с помощью Additional headers.

По предложению @Scott Mildenberger*

Authorization: @concat('Bearer ', variables('token'))

enter image description here

Конвейер успешно выполнен и получил результат:

enter image description here

enter image description here

Другие вопросы по теме