[ aws . apigateway ]
put-integration
Описание
Настройка интеграции метода.
См. также: Документацию AWS API
Синтаксис
put-integration
--rest-api-id <value>
--resource-id <value>
--http-method <value>
--type <value>
[--integration-http-method <value>]
[--uri <value>]
[--connection-type <value>]
[--connection-id <value>]
[--credentials <value>]
[--request-parameters <value>]
[--request-templates <value>]
[--passthrough-behavior <value>]
[--cache-namespace <value>]
[--cache-key-parameters <value>]
[--content-handling <value>]
[--timeout-in-millis <value>]
[--tls-config <value>]
[--cli-input-json | --cli-input-yaml]
[--generate-cli-skeleton <value>]
[--debug]
[--endpoint-url <value>]
[--no-verify-ssl]
[--no-paginate]
[--output <value>]
[--query <value>]
[--profile <value>]
[--region <value>]
[--version <value>]
[--color <value>]
[--no-sign-request]
[--ca-bundle <value>]
[--cli-read-timeout <value>]
[--cli-connect-timeout <value>]
[--cli-binary-format <value>]
[--no-cli-pager]
[--cli-auto-prompt]
[--no-cli-auto-prompt]
Параметры
--rest-api-id (строка)
--resource-id (строка)
--http-method (строка)
--type (строка)
Указывает тип входных данных для интеграции put.
Возможные значения:
HTTPAWSMOCKHTTP_PROXYAWS_PROXY
--integration-http-method (строка)
--uri (строка)
HTTP_PROXY, URI должен быть полностью сформированной, закодированной HTTP(S) URL-адресом в соответствии со спецификацией RFC-3986, для стандартной интеграции, где connectionType не VPC_LINK , или частной интеграции, где connectionType равно VPC_LINK . Для частной HTTP-интеграции URI не используется для маршрутизации. Для AWS или AWS_PROXY интеграций, URI имеет вид arn:aws:apigateway:{region}:{subdomain.service|service}:path|action/{service_api }. Здесь {Region} — регион API Gateway (например, us-east-1); {service} — имя интегрированной службы Amazon Web Services (например, s3); и {subdomain} — выделенный домен, поддерживаемый некоторыми службами Amazon Web Services для быстрого поиска имени хоста. action можно использовать для API на основе действий службы Amazon Web Services, используя строку запроса Action={name}&{p1}={v1}&p2={v2}… . Следующее {service_api} относится к поддерживаемому действию {name} плюс все необходимые входные параметры. В качестве альтернативы, path можно использовать для API на основе путей службы Amazon Web Services. Следующее service_api относится к пути к ресурсу службы Amazon Web Services, включая регион интегрированной службы Amazon Web Services, если применимо. Например, для интеграции с API S3 сервиса GetObject, uri может быть либо arn:aws:apigateway:us-west-2:s3:action/GetObject&Bucket={bucket}&Key={key}, либо arn:aws:apigateway:us-west-2:s3:path/{bucket}/{key} .--connection-type (строка)
Тип сетевого подключения к интеграционной конечной точке. Допустимое значение — INTERNET для подключений через общедоступный маршрутизируемый Интернет или VPC_LINK для частных подключений между API Gateway и сетевым балансировщиком в VPC. Значение по умолчанию — INTERNET .
Возможные значения:
INTERNETVPC_LINK
--connection-id (строка)
VPC_LINK в качестве типа подключения.--credentials (строка)
--request-parameters (карта)
Ключевая карта, задающая параметры запроса, которые передаются из запроса метода в бэкенд. Ключ — имя параметра запроса интеграции, а соответствующее значение — значение параметра запроса метода или статическое значение, которое должно быть заключено в одинарные кавычки и предварительно закодировано в соответствии с требованиями бэкенда. Значение параметра запроса метода должно соответствовать шаблону method.request.{location}.{name} , где location является querystring, path или header, и name должно быть действительным и уникальным именем параметра запроса метода.
key -> (строка)
value -> (строка)
Сокращенный синтаксис:
KeyName1=string,KeyName2=string
JSON-синтаксис:
{"string": "string"
...}
--request-templates (карта)
Представляет карту шаблонов Velocity, которые применяются к полезной нагрузке запроса на основе значения заголовка Content-Type, отправленного клиентом. Значение типа содержимого — ключ в этой карте, а шаблон (в виде строки) — значение.
key -> (строка)
value -> (строка)
Сокращенный синтаксис:
KeyName1=string,KeyName2=string
JSON-синтаксис:
{"string": "string"
...}
--passthrough-behavior (строка)
requestTemplates в ресурсе Integration. Существует три допустимых значения: WHEN_NO_MATCH, WHEN_NO_TEMPLATES и NEVER.--cache-namespace (строка)
cacheNamespace. Вы можете указать одинаковый cacheNamespace для ресурсов, чтобы возвращать одинаковые кэшированные данные для запросов к разным ресурсам.--cache-key-parameters (список)
Список параметров запроса, значения которых кэшируются API Gateway. Чтобы быть допустимыми значениями для cacheKeyParameters, эти параметры также должны быть указаны для метода requestParameters.
(строка)
Синтаксис:
"string" "string" ...
--content-handling (строка)
Указывает, как обрабатывать преобразования типа содержимого полезной нагрузки запроса. Поддерживаемые значения — CONVERT_TO_BINARY и CONVERT_TO_TEXT, с соответствующим поведением:
Если этот параметр не определен, полезная нагрузка запроса будет передаваться из запроса метода в запрос интеграции без изменений, при условии, что passthroughBehavior настроен на поддержку прохождения полезной нагрузки.
Возможные значения:
CONVERT_TO_BINARYCONVERT_TO_TEXT
--timeout-in-millis (целое число)
--tls-config (структура)
Указывает конфигурацию TLS для интеграции.
insecureSkipVerification -> (булево)
Указывает, пропускать ли API Gateway проверку, что сертификат для интеграционной конечной точки выдан поддерживаемым центром сертификации. Не рекомендуется, но позволяет использовать сертификаты, подписанные частными центрами сертификации, или самоподписанные сертификаты. При включении API Gateway все равно выполняет базовую проверку сертификата, которая включает проверку даты истечения срока действия сертификата, имени хоста и наличия корневого сертификата центра сертификации. Поддерживается только для HTTP и HTTP_PROXY интеграций.
Предупреждение
ВключениеinsecureSkipVerification не рекомендуется, особенно для интеграций с общедоступными HTTPS-конечными точками. При включении insecureSkipVerification увеличивается риск атак «человек посередине».Сокращенный синтаксис:
insecureSkipVerification=boolean
JSON-синтаксис:
{
"insecureSkipVerification": true|false
}
--cli-input-json | --cli-input-yaml (строка) Читает аргументы из предоставленной JSON-строки. JSON-строка следует формату, предоставленному --generate-cli-skeleton. Если на командной строке указаны другие аргументы, эти значения переопределяют значения, предоставленные JSON. Невозможно передать произвольные двоичные значения с использованием предоставленного JSON-значения, так как строка будет взята буквально. Это может не быть указано вместе с --cli-input-yaml.
--generate-cli-skeleton (строка) Выводит JSON-скелет в стандартный вывод без отправки запроса к API. Если предоставлено без значения или со значением input, выводит пример входного JSON, который можно использовать как аргумент для --cli-input-json. Аналогично, если предоставлено yaml-input, выведет пример входного YAML, который можно использовать с --cli-input-yaml. Если предоставлено значение output, проверяет входные данные команд и возвращает пример выходного JSON для этой команды. Сгенерированный JSON-скелет не стабилен между версиями AWS CLI, и нет гарантий обратной совместимости в сгенерированном JSON-скелете.
Общие параметры
--debug (boolean)
Включить отладочную запись в журнал.
--endpoint-url (string)
Переопределить URL по умолчанию команды заданным URL.
--no-verify-ssl (boolean)
По умолчанию AWS CLI использует SSL при взаимодействии с AWS-сервисами. Для каждого SSL-соединения AWS CLI будет проверять сертификаты SSL. Этот параметр переопределяет поведение по умолчанию по проверке SSL-сертификатов.
--no-paginate (boolean)
Отключить автоматическую постраничную навигацию. Если автоматическая постраничная навигация отключена, AWS CLI сделает только один вызов для первой страницы результатов.
--output (string)
Стиль форматирования вывода команды.
- json
- text
- table
- yaml
- yaml-stream
--query (string)
Запрос JMESPath для фильтрации данных ответа.
--profile (string)
Использование определенного профиля из файла учетных данных.
--region (string)
Регион для использования. Переопределяет настройки конфигурации/среды.
--version (string)
Отображение версии этого инструмента.
--color (string)
Включение/выключение цветного вывода.
- on
- off
- auto
--no-sign-request (boolean)
Не подписывать запросы. Учетные данные не будут загружаться, если этот аргумент предоставлен.
--ca-bundle (string)
Файл с сертификатами CA для проверки SSL-сертификатов. Переопределяет настройки конфигурации/среды.
--cli-read-timeout (int)
Максимальное время чтения сокета в секундах. Если значение установлено в 0, чтение сокета будет блокирующим и не будет иметь таймаута. Значение по умолчанию - 60 секунд.
--cli-connect-timeout (int)
Максимальное время подключения сокета в секундах. Если значение установлено в 0, подключение сокета будет блокирующим и не будет иметь таймаута. Значение по умолчанию - 60 секунд.
--cli-binary-format (string)
Стиль форматирования для двоичных блоков. По умолчанию используется формат base64. Формат base64 ожидает, что двоичные блоки будут предоставлены в виде закодированной строки base64. Формат raw-in-base64-out сохраняет совместимость с поведением AWS CLI V1, и двоичные значения должны передаваться буквально. При предоставлении содержимого из файла, соответствующего двоичному блоку, fileb:// всегда будет обрабатываться как двоичный и будет использовать содержимое файла напрямую независимо от параметра cli-binary-format. При использовании file:// содержимое файла должно быть должным образом отформатировано для настроенного параметра cli-binary-format.
- base64
- raw-in-base64-out
--no-cli-pager (boolean)
Отключить пейджер CLI для вывода.
--cli-auto-prompt (boolean)
Автоматически запросить параметры ввода CLI.
--no-cli-auto-prompt (boolean)
Отключить автоматический запрос параметров ввода CLI.
Примеры
Примечание
Чтобы использовать следующие примеры, необходимо установить и настроить AWS CLI. Дополнительная информация содержится в руководстве по началу работы в руководстве пользователя AWS CLI.
Если не указано иное, все примеры используют правила цитирования unix-подобных оболочек. Эти примеры необходимо адаптировать к правилам цитирования вашей оболочки. См. раздел Использование кавычек со строками в руководстве пользователя AWS CLI.
Для создания запроса интеграции MOCK
Команда:
aws apigateway put-integration --rest-api-id 1234123412 --resource-id a1b2c3 --http-method GET --type MOCK --request-templates '{ "application/json": "{\"statusCode\": 200}" }'
Для создания запроса интеграции HTTP
Команда:
aws apigateway put-integration --rest-api-id 1234123412 --resource-id a1b2c3 --http-method GET --type HTTP --integration-http-method GET --uri 'https://domain.tld/path'
Для создания запроса интеграции AWS с конечной точкой функции Lambda
Команда:
aws apigateway put-integration --rest-api-id 1234123412 --resource-id a1b2c3 --http-method GET --type AWS --integration-http-method POST --uri 'arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:123412341234:function:function_name/invocations'
Вывод
type -> (строка)
Указывает тип интеграции метода API. Допустимое значение — одно из следующих:
Для интеграций HTTP и HTTP-прокси, каждая интеграция может указать протокол (http/https ), порт и путь. Поддерживаются стандартные порты 80 и 443, а также пользовательские порты выше 1024. Интеграция HTTP или HTTP-прокси с connectionType значением VPC_LINK называется частной интеграцией и использует VpcLink для подключения API Gateway к балансировщику нагрузки сети VPC.
httpMethod -> (строка)
MOCK , это свойство является необязательным. Для интеграций Lambda необходимо установить метод интеграции на POST. Для всех других типов необходимо указать это свойство.uri -> (строка)
Указывает универсальный идентификатор ресурса (URI) конечной точки интеграции.
Для интеграций HTTP или HTTP_PROXY URI должен быть полностью сформированной, закодированной HTTP(S) URL-адресом в соответствии со спецификацией RFC-3986 для стандартных интеграций. Если connectionType равно VPC_LINK, укажите имя DNS-балансировщика сети. Для интеграций AWS или AWS_PROXY URI имеет вид arn:aws:apigateway:{region}:{subdomain.service|service}:path|action/{service_api}. Здесь {Region} — регион API Gateway (например, us-east-1); {service} — имя интегрированной службы Amazon Web Services (например, s3); и {subdomain} — определенный поддомен, поддерживаемый некоторыми службами Amazon Web Services для быстрого поиска имени хоста. Для API-интерфейсов на основе действий Amazon Web Services можно использовать параметр action, используя строку запроса Action={name}&{p1}={v1}&p2={v2}… В результате {service_api} относится к поддерживаемому действию {name} плюс все необходимые входные параметры. В качестве альтернативы, для API-интерфейсов на основе пути Amazon Web Services можно использовать параметр path. В результате {service_api} относится к пути к ресурсу службы Amazon Web Services, включая регион интегрированной службы Amazon Web Services, если применимо. Например, для интеграции с API S3 метода GetObject URI может быть либо arn:aws:apigateway:us-west-2:s3:action/GetObject&Bucket={bucket}&Key={key}, либо arn:aws:apigateway:us-west-2:s3:path/{bucket}/{key}
connectionType -> (строка)
INTERNET для подключений через публичный маршрутизируемый интернет или VPC_LINK для частных подключений между API Gateway и балансировщиком нагрузки сети в VPC. Значение по умолчанию — INTERNET.connectionId -> (строка)
connectionType=VPC_LINK и неопределено, в противном случае.credentials -> (строка)
arn:aws:iam::\*:user/\*. Для использования разрешений на основе ресурсов в поддерживаемых службах Amazon Web Services укажите null.requestParameters -> (карта)
Ключевое-значение карта, определяющая параметры запроса, которые передаются от запроса метода к обратному концу. Ключ — это имя параметра запроса интеграции, а связанное значение — это значение параметра запроса метода или статическое значение, которое должно быть заключено в одинарные кавычки и предварительно закодировано в соответствии с требованиями обратного конца. Значение параметра запроса метода должно соответствовать шаблону method.request.{location}.{name}, где location это querystring, path или header, а name должно быть допустимым и уникальным именем параметра запроса метода.
key -> (строка)
value -> (строка)
requestTemplates -> (карта)
Представляет карту шаблонов Velocity, которые применяются к полезной нагрузке запроса на основе значения заголовка Content-Type, отправленного клиентом. Значение типа содержимого является ключом в этой карте, а шаблон (в виде строки) — значением.
key -> (строка)
value -> (строка)
passthroughBehavior -> (строка)
requestTemplates. Допустимое значение — одно из следующих: WHEN_NO_MATCH: передает тело запроса метода запросу интеграции к обратному концу без преобразования, когда тип содержимого запроса метода не соответствует ни одному из типов содержимого, связанных с шаблонами сопоставления, определенными в запросе интеграции. WHEN_NO_TEMPLATES: передает тело запроса метода запросу интеграции к обратному концу без преобразования, когда в запросе интеграции не определен ни один шаблон сопоставления. Если шаблон определен при выборе этого варианта, запрос метода с несопоставленным типом содержимого будет отклонен с ответом HTTP 415 Unsupported Media Type. NEVER: отклоняет запрос метода с ответом HTTP 415 Unsupported Media Type, когда либо тип содержимого запроса метода не соответствует ни одному из типов содержимого, связанных с шаблонами сопоставления, определенными в запросе интеграции, либо в запросе интеграции не определен ни один шаблон сопоставления.contentHandling -> (строка)
Указывает, как обрабатывать преобразования типов содержимого полезной нагрузки запроса. Поддерживаемые значения — CONVERT_TO_BINARY и CONVERT_TO_TEXT, с последующим поведением:
Если это свойство не определено, полезная нагрузка запроса будет передана из запроса метода в запрос интеграции без изменений, при условии, что passthroughBehavior настроено для поддержки передачи полезной нагрузки.
timeoutInMillis -> (целое число)
cacheNamespace -> (строка)
cacheNamespace. Вы можете указать тот же cacheNamespace для ресурсов, чтобы получать одинаковые кэшированные данные для запросов к разным ресурсам.cacheKeyParameters -> (список)
Список параметров запроса, значения которых API Gateway кэширует. Чтобы быть допустимыми значениями для cacheKeyParameters, эти параметры также должны быть указаны для метода requestParameters.
(строка)
integrationResponses -> (карта)
Определяет ответы интеграции.
key -> (строка)
value -> (структура)
Представляет ответ интеграции. Код состояния должен сопоставляться с существующим MethodResponse, а параметры и шаблоны могут использоваться для преобразования ответа от обратного конца.
statusCode -> (строка)
selectionPattern -> (строка)
.+ для сопоставления ответа об ошибке. Однако убедитесь, что ответ об ошибке не содержит символов новой строки (\n) в таких случаях. Если обратный конец — функция Lambda, то совпадет заголовок ошибки Lambda-функции. Для всех других HTTP и Amazon Web Services обратных концов используется код HTTP-статуса.responseParameters -> (карта)
Ключевое-значение карта, определяющая параметры ответа, которые передаются методу ответа от обратного конца. Ключ — это имя параметра заголовка ответа метода, сопоставленное значение — значение заголовка ответа интеграции, статическое значение в одинарных кавычках или JSON-выражение из тела ответа интеграции. Ключ сопоставления должен соответствовать шаблону method.response.header.{name}, где name — допустимое и уникальное имя заголовка. Сопоставленное нестатическое значение должно соответствовать шаблону integration.response.header.{name} или integration.response.body.{JSON-expression}, где name — допустимое и уникальное имя заголовка ответа, а JSON-expression — допустимое JSON-выражение без префикса $.
key -> (строка)
value -> (строка)
responseTemplates -> (карта)
Указывает шаблоны, используемые для преобразования тела ответа интеграции. Шаблоны ответов представлены в виде карты ключ/значение, где тип содержимого является ключом, а шаблон — значением.
key -> (строка)
value -> (строка)
contentHandling -> (строка)
Указывает, как обрабатывать преобразования типов содержимого полезной нагрузки ответа. Поддерживаемые значения — CONVERT_TO_BINARY и CONVERT_TO_TEXT, с последующим поведением:
Если это свойство не определено, полезная нагрузка ответа будет передана из ответа интеграции в ответ метода без изменений.
tlsConfig -> (структура)
Указывает конфигурацию TLS для интеграции.
insecureSkipVerification -> (логическое значение)
Указывает, пропускает ли API Gateway проверку того, выдан ли сертификат для конечной точки интеграции авторитетным центром сертификации. Это не рекомендуется, но оно позволяет использовать сертификаты, подписанные частными центрами сертификации или самоподписанные сертификаты. Если включено, API Gateway по-прежнему выполняет основную проверку сертификата, которая включает проверку срока действия сертификата, имени хоста и наличия корневого сертификата авторитета. Поддерживается только для интеграций HTTP и HTTP_PROXY.
Предупреждение
ВключениеinsecureSkipVerification не рекомендуется, особенно для интеграций с общедоступными HTTPS-конечными точками. Если вы включите insecureSkipVerification, вы повышаете риск атак «человек посередине».
© Copyright 2025, Amazon Web Services. Created using Sphinx.