Основываясь на том, что я видел здесь и в других местах, кажется, что несколько дней назад добавление пользовательских заголовков ответов теперь возможно. К сожалению, я не могу найти никаких примеров.

Я использую лямбда (python) для работы API, и мне кажется, что я не могу сопоставить заголовки ответов.

Кто-нибудь может предоставить 2 основных примера: (1) Как сопоставить с настраиваемым заголовком, таким как «X-API-VER: xyz», где xyz поступает из лямбда-ответа (2) Как сопоставить заголовок Set-Cookie со строкой файла cookie из лямбда?

Я пробовал этот ответ в лямбде:

{
  "X-API-VER": "xyz",
}

Затем в качестве отображения ответа:

{

    "method.response.header.X-API-VER" : "integration.response.header.X-API-VER",

}

Но это просто меняет ответ на то же самое:

{

"method.response.header.X-API-VER" : "integration.response.header.X-API-VER",

}

Кажется, я не могу понять, как извлечь данные из лямбда-ответа для установки заголовка, выводя остальную часть лямбда-ответа как обычную сквозную передачу.

Если это важно, мы используем веб-интерфейс для API Gateway.

Кто-нибудь еще не понял этого?

Ссылка: http: / /docs.aws.amazon.com/apigateway/latest/developerguide/request-response-data-mappings.html#mapping-response-parameters.

2
Z Jones 24 Дек 2015 в 21:22

2 ответа

Лучший ответ

Догадаться! Похоже, я пытался сделать это в Response Mapping, тогда как на самом деле я должен был сделать отображение Header, как описано здесь:

https://stackoverflow.com/a/33676951/545447

1
Community 23 Май 2017 в 12:33

Попробуйте использовать "body" вместо "header" в выражении отображения ответа интеграции:

integration.response.body.X-API-VER

Обратитесь к этому документу для сопоставления ответов интеграции с ответами метода API Gateway: https://docs.aws.amazon.com/apigateway/latest/developerguide/request-response-data-mappings.html#mapping-response-parameters

2
Lorenzo de Lara 24 Дек 2015 в 19:17