Terraform 0.11

aws_api_gateway_integration_response




terraform

aws_api_gateway_integration_response

एक एपीआई गेटवे संसाधन के लिए एक HTTP विधि एकीकरण प्रतिक्रिया प्रदान करता है।

उदाहरण उपयोग

resource "aws_api_gateway_rest_api" "MyDemoAPI" {
  name        = "MyDemoAPI"
  description = "This is my API for demonstration purposes"
}

resource "aws_api_gateway_resource" "MyDemoResource" {
  rest_api_id = "${aws_api_gateway_rest_api.MyDemoAPI.id}"
  parent_id   = "${aws_api_gateway_rest_api.MyDemoAPI.root_resource_id}"
  path_part   = "mydemoresource"
}

resource "aws_api_gateway_method" "MyDemoMethod" {
  rest_api_id   = "${aws_api_gateway_rest_api.MyDemoAPI.id}"
  resource_id   = "${aws_api_gateway_resource.MyDemoResource.id}"
  http_method   = "GET"
  authorization = "NONE"
}

resource "aws_api_gateway_integration" "MyDemoIntegration" {
  rest_api_id = "${aws_api_gateway_rest_api.MyDemoAPI.id}"
  resource_id = "${aws_api_gateway_resource.MyDemoResource.id}"
  http_method = "${aws_api_gateway_method.MyDemoMethod.http_method}"
  type        = "MOCK"
}

resource "aws_api_gateway_method_response" "200" {
  rest_api_id = "${aws_api_gateway_rest_api.MyDemoAPI.id}"
  resource_id = "${aws_api_gateway_resource.MyDemoResource.id}"
  http_method = "${aws_api_gateway_method.MyDemoMethod.http_method}"
  status_code = "200"
}

resource "aws_api_gateway_integration_response" "MyDemoIntegrationResponse" {
  rest_api_id = "${aws_api_gateway_rest_api.MyDemoAPI.id}"
  resource_id = "${aws_api_gateway_resource.MyDemoResource.id}"
  http_method = "${aws_api_gateway_method.MyDemoMethod.http_method}"
  status_code = "${aws_api_gateway_method_response.200.status_code}"

  # Transforms the backend JSON response to XML
  response_templates {
    "application/xml" = <<EOF
#set($inputRoot = $input.path('$'))
<?xml version="1.0" encoding="UTF-8"?>
<message>
    $inputRoot.body
</message>
EOF
  }
}

तर्क संदर्भ

निम्नलिखित तर्क समर्थित हैं:

  • rest_api_id - (आवश्यक) संबंधित REST API की आईडी
  • resource_id - (आवश्यक) API संसाधन ID
  • http_method - (आवश्यक) HTTP विधि ( GET , POST , PUT , DELETE , HEAD , OPTIONS , ANY )
  • status_code - (आवश्यक) HTTP स्थिति कोड
  • selection_pattern - (वैकल्पिक) बैकएंड से प्रतिक्रिया के आधार पर एकीकरण प्रतिक्रिया चुनने के लिए उपयोग किए जाने वाले नियमित अभिव्यक्ति पैटर्न को निर्दिष्ट करता है। इसे सेट करना - एकीकरण को डिफ़ॉल्ट बनाता है। यदि बैकएंड एक AWS लाम्बा फ़ंक्शन है, तो AWS लैंबडा फंक्शन एरर हैडर मेल खाता है। अन्य सभी HTTP और AWS बैकएंड के लिए, HTTP स्थिति कोड का मिलान किया जाता है।
  • response_templates - (वैकल्पिक) एकीकरण प्रतिक्रिया निकाय को बदलने के लिए उपयोग किए जाने वाले खाकों को निर्दिष्ट करने वाला एक नक्शा
  • response_parameters - (वैकल्पिक) प्रतिक्रिया मापदंडों का एक मानचित्र जिसे बैकएंड प्रतिक्रिया से पढ़ा जा सकता है। उदाहरण के लिए: response_parameters = { "method.response.header.X-Some-Header" = "integration.response.header.X-Some-Other-Header" } ,
  • response_parameters_in_json - अस्वीकृत , इसके बजाय response_parameters उपयोग करें।
  • content_handling - (वैकल्पिक) निर्दिष्ट करता है कि अनुरोध पेलोड सामग्री प्रकार रूपांतरणों को कैसे संभालना है। समर्थित मान CONVERT_TO_BINARY और CONVERT_TO_TEXT । यदि यह संपत्ति परिभाषित नहीं है, तो प्रतिक्रिया पेलोड को एकीकरण प्रतिक्रिया से संशोधन के बिना विधि प्रतिक्रिया में पारित किया जाएगा।