Действие веб-перехватчика в Фабрике данных Azure
ОБЛАСТЬ ПРИМЕНЕНИЯ: Фабрика данных Azure Azure Synapse Analytics
Совет
Попробуйте использовать фабрику данных в Microsoft Fabric, решение для аналитики с одним интерфейсом для предприятий. Microsoft Fabric охватывает все, от перемещения данных до обработки и анализа данных в режиме реального времени, бизнес-аналитики и отчетности. Узнайте, как бесплатно запустить новую пробную версию !
Действие веб-перехватчика может контролировать выполнение конвейеров с помощью пользовательского кода. С помощью действия веб-перехватчика код может вызвать конечную точку и передать ей URL-адрес обратного вызова. Выполнение конвейера ожидает обратный вызов перед переходом к следующему действию.
Внимание
Действие веб-перехватчика теперь позволяет отображать состояние ошибки и пользовательские сообщения обратно в действии и конвейере. Задайте для reportStatusOnCallBack значение True и включите StatusCode и Error в полезные данные обратного вызова. Дополнительные сведения см. в этом разделе.
Создание действия Webhook с помощью пользовательского интерфейса
Чтобы использовать действие Webhook в конвейере, выполните следующие действия:
Выполните поиск Webhook в области конвейера "Действия" и перетащите действие Webhook на холст конвейера.
Выберите новое действие веб-перехватчика на холсте, если оно еще не выбрано и вкладка "Параметры " для изменения сведений.
Укажите URL-адрес веб-перехватчика, который может быть литеральной строкой URL-адреса или любым сочетанием динамических выражений, функций, системных переменных или выходных данных других действий. Укажите другие сведения для отправки в запрос.
Используйте выходные данные действия в качестве входных данных для любого другого действия. Укажите ссылку на выходные данные в любом месте целевого действия, где поддерживается динамическое содержимое.
Синтаксис
{
"name": "MyWebHookActivity",
"type": "WebHook",
"typeProperties": {
"method": "POST",
"url": "<URLEndpoint>",
"headers": {
"Content-Type": "application/json"
},
"body": {
"key": "value"
},
"timeout": "00:10:00",
"reportStatusOnCallBack": false,
"authentication": {
"type": "ClientCertificate",
"pfx": "****",
"password": "****"
}
}
}
Свойства типа
Свойство | Description | Допустимые значения | Обязательное поле |
---|---|---|---|
name | Имя действия веб-перехватчика. | Строка | Да |
type | Необходимо задать значение WebHook. | Строка | Да |
method | Метод REST API для целевой конечной точки. | Строка. Поддерживаемый тип — POST. | Да |
url | Целевая конечная точка и путь. | Строка или выражение со строковым значением resultType. | Да |
headers | Заголовки, которые отправляются в запрос. Ниже приведен пример, который задает язык и тип запроса: "headers" : { "Accept-Language": "en-us", "Content-Type": "application/json" } . |
Строка или выражение со строковым значением resultType. | Да. Требуется заголовок Content-Type , например "headers":{ "Content-Type":"application/json"} . |
текст | Представляет полезные данные, отправляемые конечной точке. | Допустимый формат JSON или выражение со значением resultType в формате JSON. Схему полезных данных запроса см. в этом разделе. | Да |
проверке подлинности | Способ проверки подлинности, используемый для вызова конечной точки. Поддерживаемые типы данных: Basic и ClientCertificate. Дополнительные сведения см. в разделе Authenticate to the Speech API (Аутентификация в API речи). Если проверка подлинности не требуется, исключите это свойство. | Строка или выражение со строковым значением resultType. | No |
timeout | Как долго действие ожидает обратного вызова, указанного параметром callBackUri. Значение по умолчанию — 10 минут (00:10:00). Значения в формате TimeSpan д.чч:мм:сс. | Строка | Нет |
Отчет о состоянии при обратном вызове | Позволяет пользователю сообщать о неудачном статусе действия веб-перехватчика. | Логический | No |
Проверка подлинности
Действие веб-перехватчика поддерживает следующие типы проверки подлинности.
нет
Если проверка подлинности не требуется, не включайте свойство authentication.
Базовая
Укажите имя пользователя и пароль для использования с обычной проверкой подлинности.
"authentication":{
"type":"Basic",
"username":"****",
"password":"****"
}
Сертификат клиента
Укажите содержимое в кодировке Base64 PFX-файла и пароль.
"authentication":{
"type":"ClientCertificate",
"pfx":"****",
"password":"****"
}
Управляемое удостоверение
Укажите URI ресурса, для которого будет запрошен маркер доступа, с помощью управляемого удостоверения для Фабрики данных или экземпляра рабочей области Synapse. Для вызова API управления ресурсами Azure используйте https://management.azure.com/
. Дополнительные сведения об управляемых удостоверениях для ресурсов Azure см. в статье Что такое управляемые удостоверения для ресурсов Azure?
"authentication": {
"type": "MSI",
"resource": "https://management.azure.com/"
}
Примечание.
Если для службы настроен репозиторий Git, необходимо сохранить свои учетные данные в хранилище Azure Key Vault, чтобы использовать либо обычную проверку подлинности либо проверку подлинности на основе сертификата клиента. Служба не хранит пароли в Git.
Дополнительные примечания
Служба передает дополнительное свойство callBackUri в тексте, отправляемом конечной точке URL-адреса. Служба ждет, что этот код URI будет вызываться, до истечения указанного значения времени ожидания. Если URI не вызывается, действие завершается с состоянием TimedOut.
Действие веб-перехватчика завершается ошибкой при сбое вызова пользовательской конечной точки. Любое сообщение об ошибке можно добавить в текст обратного вызова и использовать в последующем действии.
При каждом вызове REST API время ожидания клиента истекает, если конечная точка не отвечает в течение одной минуты. Такое поведение является стандартной рекомендацией для протокола HTTP. Чтобы устранить эту проблему, реализуйте шаблон 202. В текущем случае конечная точка возвращает 202 (принято) и клиентские опросы.
Время ожидания, равное 1 минуте, для запроса не имеет ничего общего со временем ожидания для действия. Последнее используется для ожидания обратного вызова, заданного параметром callbackUri.
Текст, переданный обратно в URI обратного вызова, должен быть допустимым в формате JSON. В качестве заголовка Content-Type
установите application/json
.
При использовании свойства Отчета о состоянии при обратном вызове необходимо добавить следующий код в тело при выполнении обратного вызова:
{
"Output": {
// output object is used in activity output
"testProp": "testPropValue"
},
"Error": {
// Optional, set it when you want to fail the activity
"ErrorCode": "testErrorCode",
"Message": "error message to show in activity error"
},
"StatusCode": "403" // when status code is >=400, activity is marked as failed
}
Связанный контент
Поддерживаются следующие действия потока управления: