{"id":1134,"date":"2023-05-09T21:52:39","date_gmt":"2023-05-09T12:52:39","guid":{"rendered":"https:\/\/www.gyuroot.com\/wordpress\/?p=1134"},"modified":"2023-07-04T22:11:01","modified_gmt":"2023-07-04T13:11:01","slug":"sprint-api-gateway%ec%99%80-%ec%84%9c%eb%b2%84%eb%a6%ac%ec%8a%a4-%ec%95%a0%ed%94%8c%eb%a6%ac%ec%bc%80%ec%9d%b4%ec%85%98","status":"publish","type":"post","link":"https:\/\/www.gyuroot.com\/wordpress\/?p=1134","title":{"rendered":"[Sprint] API Gateway\uc640 \uc11c\ubc84\ub9ac\uc2a4 \uc560\ud50c\ub9ac\ucf00\uc774\uc158"},"content":{"rendered":"<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_63 counter-hierarchy ez-toc-counter ez-toc-white ez-toc-container-direction\">\n<div class=\"ez-toc-title-container\">\n<p class=\"ez-toc-title \" >\ubaa9\ucc28<\/p>\n<span class=\"ez-toc-title-toggle\"><a href=\"#\" class=\"ez-toc-pull-right ez-toc-btn ez-toc-btn-xs ez-toc-btn-default ez-toc-toggle\" aria-label=\"Toggle Table of Content\"><span class=\"ez-toc-js-icon-con\"><span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #999;color:#999\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #999;color:#999\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewBox=\"0 0 24 24\" version=\"1.2\" baseProfile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/span><\/a><\/span><\/div>\n<nav><ul class='ez-toc-list ez-toc-list-level-1 ' ><li class='ez-toc-page-1 ez-toc-heading-level-1'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/www.gyuroot.com\/wordpress\/?p=1134\/#_%ED%95%99%EC%8A%B5_%EB%AA%A9%ED%91%9C\" title=\"# \ud559\uc2b5 \ubaa9\ud45c\"># \ud559\uc2b5 \ubaa9\ud45c<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-1'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/www.gyuroot.com\/wordpress\/?p=1134\/#_%ED%95%B4%EA%B2%B0_%EA%B3%BC%EC%A0%9C\" title=\"# \ud574\uacb0 \uacfc\uc81c\"># \ud574\uacb0 \uacfc\uc81c<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/www.gyuroot.com\/wordpress\/?p=1134\/#Step_1_API_Gateway_%E2%80%93_Lambda_%EB%B0%B0%ED%8F%AC_Instruction\" title=\"Step 1: API Gateway &#8211; Lambda \ubc30\ud3ec Instruction\">Step 1: API Gateway &#8211; Lambda \ubc30\ud3ec Instruction<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/www.gyuroot.com\/wordpress\/?p=1134\/#STEP_2_API_%EA%B2%8C%EC%9D%B4%ED%8A%B8%EC%9B%A8%EC%9D%B4_%E2%80%93_Lambda\" title=\"STEP 2: API \uac8c\uc774\ud2b8\uc6e8\uc774 &#8211; Lambda\">STEP 2: API \uac8c\uc774\ud2b8\uc6e8\uc774 &#8211; Lambda<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/www.gyuroot.com\/wordpress\/?p=1134\/#STEP_3_API_%EA%B2%8C%EC%9D%B4%ED%8A%B8%EC%9B%A8%EC%9D%B4%EC%97%90_%EC%A0%9C%ED%95%9C_%EC%B6%94%EA%B0%80%ED%95%98%EA%B8%B0\" title=\"STEP 3: API \uac8c\uc774\ud2b8\uc6e8\uc774\uc5d0 \uc81c\ud55c \ucd94\uac00\ud558\uae30\">STEP 3: API \uac8c\uc774\ud2b8\uc6e8\uc774\uc5d0 \uc81c\ud55c \ucd94\uac00\ud558\uae30<\/a><\/li><\/ul><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-1'><a class=\"ez-toc-link ez-toc-heading-6\" href=\"https:\/\/www.gyuroot.com\/wordpress\/?p=1134\/#_%EC%8B%A4%EC%8A%B5_%EC%9E%90%EB%A3%8C\" title=\"# \uc2e4\uc2b5 \uc790\ub8cc\"># \uc2e4\uc2b5 \uc790\ub8cc<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-1'><a class=\"ez-toc-link ez-toc-heading-7\" href=\"https:\/\/www.gyuroot.com\/wordpress\/?p=1134\/#_%EA%B3%BC%EC%A0%9C_%ED%95%AD%EB%AA%A9%EB%B3%84_%EC%A7%84%ED%96%89_%EC%83%81%ED%99%A9\" title=\"# \uacfc\uc81c \ud56d\ubaa9\ubcc4 \uc9c4\ud589 \uc0c1\ud669\"># \uacfc\uc81c \ud56d\ubaa9\ubcc4 \uc9c4\ud589 \uc0c1\ud669<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-8\" href=\"https:\/\/www.gyuroot.com\/wordpress\/?p=1134\/#STEP_1_API_Gateway_%E2%80%93_Lambda_%EB%B0%B0%ED%8F%AC_Instruction\" title=\"STEP 1 : API Gateway &#8211; Lambda \ubc30\ud3ec Instruction\">STEP 1 : API Gateway &#8211; Lambda \ubc30\ud3ec Instruction<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-9\" href=\"https:\/\/www.gyuroot.com\/wordpress\/?p=1134\/#STEP_2_%ED%8A%B8%EB%A6%AC%EA%B1%B0_%EC%B6%94%EA%B0%80_API_%EA%B2%8C%EC%9D%B4%ED%8A%B8%EC%9B%A8%EC%9D%B4_%E2%80%93_Lambda\" title=\"STEP 2: \ud2b8\ub9ac\uac70 \ucd94\uac00 API \uac8c\uc774\ud2b8\uc6e8\uc774 &#8211; Lambda\">STEP 2: \ud2b8\ub9ac\uac70 \ucd94\uac00 API \uac8c\uc774\ud2b8\uc6e8\uc774 &#8211; Lambda<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-10\" href=\"https:\/\/www.gyuroot.com\/wordpress\/?p=1134\/#STEP_3_API_%EA%B2%8C%EC%9D%B4%ED%8A%B8%EC%9B%A8%EC%9D%B4%EC%97%90_%EC%A0%9C%ED%95%9C_%EC%B6%94%EA%B0%80%ED%95%98%EA%B8%B0-2\" title=\"STEP 3: API \uac8c\uc774\ud2b8\uc6e8\uc774\uc5d0 \uc81c\ud55c \ucd94\uac00\ud558\uae30\">STEP 3: API \uac8c\uc774\ud2b8\uc6e8\uc774\uc5d0 \uc81c\ud55c \ucd94\uac00\ud558\uae30<\/a><\/li><\/ul><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-1'><a class=\"ez-toc-link ez-toc-heading-11\" href=\"https:\/\/www.gyuroot.com\/wordpress\/?p=1134\/#_TROUBLE_SHOOTING_LOG\" title=\"# TROUBLE SHOOTING LOG\"># TROUBLE SHOOTING LOG<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-12\" href=\"https:\/\/www.gyuroot.com\/wordpress\/?p=1134\/#%EC%9B%90%EC%9D%B8\" title=\"\uc6d0\uc778\">\uc6d0\uc778<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-13\" href=\"https:\/\/www.gyuroot.com\/wordpress\/?p=1134\/#%ED%95%B4%EA%B2%B0_%EB%B0%A9%EC%95%88\" title=\"\ud574\uacb0 \ubc29\uc548\">\ud574\uacb0 \ubc29\uc548<\/a><\/li><\/ul><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-1'><a class=\"ez-toc-link ez-toc-heading-14\" href=\"https:\/\/www.gyuroot.com\/wordpress\/?p=1134\/#References\" title=\"#References\">#References<\/a><\/li><\/ul><\/nav><\/div>\n\n<h1 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"_%ED%95%99%EC%8A%B5_%EB%AA%A9%ED%91%9C\"><\/span># \ud559\uc2b5 \ubaa9\ud45c<span class=\"ez-toc-section-end\"><\/span><\/h1>\n\n\n<ul>\n<li>\ub2e4\uc74c \uc544\ud0a4\ud14d\ucc98\ub85c \uad6c\uc131\ub41c \uc11c\ubc84\ub9ac\uc2a4 \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc744 \ubc30\ud3ec\ud569\ub2c8\ub2e4.<\/li>\n\n\n<li>\uc9c1\uc811 API Gateway\ub85c \uc2e4\ud589\ud574 \ubd05\ub2c8\ub2e4.<\/li>\n\n\n<li>API Gateway\uc758 \uc778\uc99d \uae30\ub2a5\uc744 \uc774\uc6a9\ud574\uc11c, HTTP \uc694\uccad\uc5d0 \ud2b9\uc815 API Key\ub97c \uc0ac\uc6a9\ud558\ub294 \uc608\uc81c\ub97c \ub2e4\uc74c \ub450 \uac00\uc9c0 \ubc29\ubc95\uc73c\ub85c \uad6c\ud604\ud569\ub2c8\ub2e4.<\/li>\n\n\n<li>CloudWatch Logs\ub97c \ud1b5\ud574\uc11c API \ud638\ucd9c\uc744 \ubaa8\ub2c8\ud130\ub9c1\ud560 \uc218 \uc788\uc5b4\uc57c \ud569\ub2c8\ub2e4.<\/li>\n\n<\/ul>\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-wide\"\/>\n\n\n<h1 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"_%ED%95%B4%EA%B2%B0_%EA%B3%BC%EC%A0%9C\"><\/span># \ud574\uacb0 \uacfc\uc81c<span class=\"ez-toc-section-end\"><\/span><\/h1>\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Step_1_API_Gateway_%E2%80%93_Lambda_%EB%B0%B0%ED%8F%AC_Instruction\"><\/span><strong>Step 1: API Gateway &#8211; Lambda \ubc30\ud3ec Instruction<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n<ol>\n<li>\uba3c\uc800 lambda \ud568\uc218\uc640 API Gateway \uc138\ud305\uc744 \ud55c\uaebc\ubc88\uc5d0 \ud560 \uc218 \uc788\uac8c SAM\uc744 \uc774\uc6a9\ud55c\ub2e4<\/li>\n\n\n<li>\ud604\uc7ac \ub78c\ub2e4\uac00 \ub7f0\ud0c0\uc784 nodejs 14.x\uc744 \uc9c0\uc6d0\ud558\ubbc0\ub85c template.yaml \ud30c\uc77c\uc5d0\uc11c Runtime \ubd80\ubd84\uc744 \ucc3e\uc544 \ub2e4\uc74c\uacfc \uac19\uc774 \ubc14\uafbc\ub2e4.<\/li>\n\n<\/ol>\n\n\n<pre class=\"wp-block-code\"><code>1 - Runtime: nodejs12.x\n2 + Runtime: nodejs14.x<\/code><\/pre>\n\n\n<ol>\n<li>\uc0ac\uc6a9\uc790 \ucef4\ud4e8\ud130\uc5d0 node.js \ub7f0\ud0c0\uc784\uc744 \uc124\uce58\ud55c\ub2e4.<\/li>\n\n\n<li>sam build\ub97c \ud1b5\ud574 \ube4c\ub4dc\uac00 \ub418\ub294\uc9c0 \ud655\uc778\ud574 \ubcf8\ub2e4.<\/li>\n\n\n<li>sam deploy &#8211;guided\ub97c \ud1b5\ud574 \ubc30\ud3ec\ub97c \uc2dc\ub3c4\ud55c\ub2e4.<\/li>\n\n\n<li>\ub78c\ub2e4 \ubc0f DynamoDB\uc5d0 \uc5b4\ub5a4 \ub9ac\uc18c\uc2a4\uac00 \uc0dd\uc131\uc774 \ub418\uc5c8\ub294\uc9c0 \uc9c1\uc811 \ucf58\uc194\uc5d0 \ub4e4\uc5b4\uac00\uc11c \ud655\uc778\ud574\ubcf4\uac8c \ud55c\ub2e4.<\/li>\n\n\n<li>\uc798 \uc791\ub3d9\ub418\ub294\uc9c0 \uba85\ub839\uc5b4\ub97c \ud1b5\ud574 \ud655\uc778\ud55c\ub2e4.202 status\uac00 \ub3c4\ucc29\ud558\uba74 \uc131\uacf5!<\/li>\n\n<\/ol>\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"STEP_2_API_%EA%B2%8C%EC%9D%B4%ED%8A%B8%EC%9B%A8%EC%9D%B4_%E2%80%93_Lambda\"><\/span><strong>STEP 2: API \uac8c\uc774\ud2b8\uc6e8\uc774 &#8211; Lambda<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n<ol>\n<li>\ud2b8\ub9ac\uac70 \ucd94\uac00 \ubc84\ud2bc\uc744 \ub204\ub978\ub2e4<\/li>\n\n\n<li>\ucd94\uac00 \ud2b8\ub9ac\uac70\uc5d0\uc11c \ub2e4\uc74c \uc635\uc158\uc744 \ud1b5\ud574 API \uac8c\uc774\ud2b8\uc6e8\uc774\ub97c \uc0dd\uc131\ud55c\ub2e4.<\/li>\n\n<\/ol>\n\n\n<ul>\n<li>API \uac8c\uc774\ud2b8\uc6e8\uc774\ub97c \uc120\ud0dd<\/li>\n\n\n<li>\uc0c8 API\ub97c \uc0dd\uc131<\/li>\n\n\n<li>REST API \uc720\ud615<\/li>\n\n\n<li>\ubcf4\uc548\uc740 &quot;\uc5f4\uae30&quot;<\/li>\n\n<\/ul>\n\n\n<ol>\n<li>\uc774\uc81c API \uc5d4\ub4dc\ud3ec\uc778\ud2b8\uc5d0 HTTP \uc694\uccad\uc744 \ubcf4\ub0b4\uba74, \ud568\uc218\ub97c \ud638\ucd9c\ud560 \uc218 \uc788\ub2e4. \uc694\uccad\uc758 \uc0c1\uc138 \ub0b4\uc6a9\uc774 DynamoDB\uc5d0 \uc800\uc7a5\ub41c\ub2e4.<\/li>\n\n<\/ol>\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/www.gyuroot.com\/wordpress\/wp-content\/uploads\/image-302.png?v=1688474093\" alt=\"\"\/><\/figure>\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"STEP_3_API_%EA%B2%8C%EC%9D%B4%ED%8A%B8%EC%9B%A8%EC%9D%B4%EC%97%90_%EC%A0%9C%ED%95%9C_%EC%B6%94%EA%B0%80%ED%95%98%EA%B8%B0\"><\/span><strong>STEP 3: API \uac8c\uc774\ud2b8\uc6e8\uc774\uc5d0 \uc81c\ud55c \ucd94\uac00\ud558\uae30<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n<blockquote class=\"wp-block-quote has-text-color\" style=\"color: rgb(0, 0, 0)\">\n<p>\uc544\ub798 \uc138 \uac1c\ub294 \uaf2d \uc2e4\uc2b5\ud574 \ubcf4\uc138\uc694<\/p>\n\n<\/blockquote>\n\n\n<ul>\n<li>POST \uc804\uc6a9\uc73c\ub85c\ub9cc \uc791\ub3d9\ud558\uac8c \ub9cc\ub4e4\uae30<\/li>\n\n\n<li>\ubcf8\ubb38\ub9cc \uc800\uc7a5\ud558\ub3c4\ub85d \ub9cc\ub4e4\uae30<\/li>\n\n\n<li>API \ud0a4\ub97c \uc774\uc6a9\ud55c \uc778\uc99d \ucd94\uac00\ud558\uae30<\/li>\n\n\n<li>\uad8c\ud55c \ubd80\uc5ec\uc790\ub97c \uc774\uc6a9\ud55c \uc778\uc99d \ubd80\uc5ec\ud558\uae30 (optional)<\/li>\n\n<\/ul>\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-wide\"\/>\n\n\n<h1 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"_%EC%8B%A4%EC%8A%B5_%EC%9E%90%EB%A3%8C\"><\/span># \uc2e4\uc2b5 \uc790\ub8cc<span class=\"ez-toc-section-end\"><\/span><\/h1>\n\n\n<p class=\"has-text-color\" style=\"color: rgb(0, 0, 0)\"><a href=\"https:\/\/github.com\/cs-devops-bootcamp\/sprint-serverless-apigateway\">sprint-serverless-apigateway<\/a><\/p>\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-wide\"\/>\n\n\n<h1 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"_%EA%B3%BC%EC%A0%9C_%ED%95%AD%EB%AA%A9%EB%B3%84_%EC%A7%84%ED%96%89_%EC%83%81%ED%99%A9\"><\/span># \uacfc\uc81c \ud56d\ubaa9\ubcc4 \uc9c4\ud589 \uc0c1\ud669<span class=\"ez-toc-section-end\"><\/span><\/h1>\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"STEP_1_API_Gateway_%E2%80%93_Lambda_%EB%B0%B0%ED%8F%AC_Instruction\"><\/span>STEP 1 : <strong>API Gateway &#8211; Lambda \ubc30\ud3ec Instruction<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n<blockquote class=\"wp-block-quote has-text-color\" style=\"color: rgb(0, 0, 0)\">\n<p>SAM(Serverless Application Model) <a href=\"https:\/\/github.com\/aws-samples\/serverless-patterns\/tree\/main\/lambda-dynamodb\">sample code<\/a> \ub85c\uceec\ub85c clone \ud6c4 node \ubc84\uc804 \ubcc0\uacbd<\/p>\n\n<\/blockquote>\n\n\n<pre class=\"wp-block-code\"><code>\/lambda-dynamodb\n\u251c\u2500\u2500  response.json\n\u251c\u2500\u2500 README.md\n\u251c\u2500\u2500 package-lock.json\n\u251c\u2500\u2500 response.json\n\u251c\u2500\u2500 samconfig.toml\n\u251c\u2500\u2500 src\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 app.js\n\u2502\u00a0\u00a0 \u2514\u2500\u2500 package.json\n\u2514\u2500\u2500 <strong>template.yaml (open\u2193)<\/strong>\nAWSTemplateFormatVersion: &#039;2010-09-09&#039;\nTransform: AWS::Serverless-2016-10-31\nDescription: &gt;\n  Persist an item to a DynamoDB table from Lambda\nResources:\n##\n#   Lambda Function                                                      #\n##\n  LambdaPutDynamoDB:\n    Type: AWS::Serverless::Function\n    Properties:\n      CodeUri: src\/\n      Handler: app.handler\n      Runtime: <strong>nodejs14.x<\/strong>\n.\n.\n.<\/code><\/pre>\n\n\n<blockquote class=\"wp-block-quote has-text-color\" style=\"color: rgb(0, 0, 0)\">\n<p>\uc218\uc815 \ud6c4 sam deploy \u2014guided <\/p>\n\n<\/blockquote>\n\n\n<pre class=\"wp-block-code\"><code>$ sam deploy --guided\n\nConfiguring SAM deploy\n======================\n\n        Looking for config file [samconfig.toml] :  Found\n        Reading default arguments  :  Success\n\n        Setting default arguments for &#039;sam deploy&#039;\n        =========================================\n        Stack Name [Lambda-Put-DynamoDB]:\n        AWS Region [ap-northeast-2]:\n        #Shows you resources changes to be deployed and require a &#039;Y&#039; to initiate deploy\n        Confirm changes before deploy [y\/N]:\n        #SAM needs permission to be able to create roles to connect to the resources in your template\n        Allow SAM CLI IAM role creation [Y\/n]:\n        #Preserves the state of previously provisioned resources when an operation fails\n        Disable rollback [y\/N]:\n        Save arguments to configuration file [Y\/n]:\n        SAM configuration file [samconfig.toml]:\n        SAM configuration environment [default]:\n\n        Looking for resources needed for deployment:\n\n        Managed S3 bucket: aws-sam-cli-managed-default-samclisourcebucket-1klk1ed3oqx09\n        A different default S3 bucket can be set in samconfig.toml and auto resolution of buckets turned off by setting resolve_s3=False\n\n        Saved arguments to config file\n        Running &#039;sam deploy&#039; for future deployments will use the parameters saved above.\n        The above parameters can be changed by modifying samconfig.toml\n        Learn more about samconfig.toml syntax at\n        https:\/\/docs.aws.amazon.com\/serverless-application-model\/latest\/developerguide\/serverless-sam-cli-config.html\n\n        Uploading to Lambda-Put-DynamoDB\/767349269ed03c78098dd31681cf08ab  1131323 \/ 1131323  (100.00%)\n\n        Deploying with following values\n        ===============================\n        Stack name                   : Lambda-Put-DynamoDB\n        Region                       : ap-northeast-2\n        Confirm changeset            : False\n        Disable rollback             : False\n        Deployment s3 bucket         : aws-sam-cli-managed-default-samclisourcebucket-1klk1ed3oqx09\n        Capabilities                 : [&quot;CAPABILITY_IAM&quot;]\n        Parameter overrides          : {}\n        Signing Profiles             : {}\n\nInitiating deployment\n=====================\n\n        Uploading to Lambda-Put-DynamoDB\/75ba76c9320f25459dac16d64527e0a4.template  1158 \/ 1158  (100.00%)\n\n\nWaiting for changeset to be created..\n\nCloudFormation stack changeset\n---------------------------------------------------------------------------------------------------------\nOperation                  LogicalResourceId          ResourceType               Replacement\n---------------------------------------------------------------------------------------------------------\n+ Add                      DynamoTable                AWS::DynamoDB::Table       N\/A\n+ Add                      LambdaPutDynamoDBRole      AWS::IAM::Role             N\/A\n+ Add                      LambdaPutDynamoDB          AWS::Lambda::Function      N\/A\n---------------------------------------------------------------------------------------------------------\n\n\nChangeset created successfully. arn:aws:cloudformation:ap-northeast-2:159088646233:changeSet\/samcli-deploy1683633231\/e679b728-d8b3-4479-aed9-d6770c9d488c\n\n\n2023-05-09 20:53:57 - Waiting for stack create\/update to complete\n\nCloudFormation events from stack operations (refresh every 5.0 seconds)\n---------------------------------------------------------------------------------------------------------\nResourceStatus             ResourceType               LogicalResourceId          ResourceStatusReason\n---------------------------------------------------------------------------------------------------------\nCREATE_IN_PROGRESS         AWS::DynamoDB::Table       DynamoTable                -\nCREATE_IN_PROGRESS         AWS::DynamoDB::Table       DynamoTable                Resource creation\n                                                                                 Initiated\nCREATE_COMPLETE            AWS::DynamoDB::Table       DynamoTable                -\nCREATE_IN_PROGRESS         AWS::IAM::Role             LambdaPutDynamoDBRole      -\nCREATE_IN_PROGRESS         AWS::IAM::Role             LambdaPutDynamoDBRole      Resource creation\n                                                                                 Initiated\nCREATE_COMPLETE            AWS::IAM::Role             LambdaPutDynamoDBRole      -\nCREATE_IN_PROGRESS         AWS::Lambda::Function      LambdaPutDynamoDB          -\nCREATE_IN_PROGRESS         AWS::Lambda::Function      LambdaPutDynamoDB          Resource creation\n                                                                                 Initiated\nCREATE_COMPLETE            AWS::Lambda::Function      LambdaPutDynamoDB          -\nCREATE_COMPLETE            AWS::CloudFormation::Sta   Lambda-Put-DynamoDB        -\n                           ck\n---------------------------------------------------------------------------------------------------------\n\nCloudFormation outputs from deployed stack\n------------------------------------------------------------------------------------------------------------\nOutputs\n------------------------------------------------------------------------------------------------------------\nKey                 DynamoDbTable\nDescription         DynamoDb Table\nValue               Lambda-Put-DynamoDB-DynamoTable-1MW4JSVZRJPFN\n\nKey                 LambdFunction\nDescription         LambdaPutDynamoDB function  Arn\nValue               Lambda-Put-DynamoDB-LambdaPutDynamoDB-cd1IuekX6y51\n------------------------------------------------------------------------------------------------------------\n\n\nSuccessfully created\/updated stack - Lambda-Put-DynamoDB in ap-northeast-2\n$ aws lambda invoke --function-name arn:aws:lambda:ap-northeast-2:159088646233:function:Lambda-Put-DynamoDB-LambdaPutDynamoDB-cd1IuekX6y51 --invocation-type Event  --payload &#039;{ &quot;Metadata&quot;: &quot;Hello&quot; }&#039;  response.json --cli-binary-format raw-in-base64-out\n{\n    &quot;StatusCode&quot;: 202\n}\n# \ubc30\ud3ec \uc131\uacf5<\/code><\/pre>\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"STEP_2_%ED%8A%B8%EB%A6%AC%EA%B1%B0_%EC%B6%94%EA%B0%80_API_%EA%B2%8C%EC%9D%B4%ED%8A%B8%EC%9B%A8%EC%9D%B4_%E2%80%93_Lambda\"><\/span>STEP 2: \ud2b8\ub9ac\uac70 \ucd94\uac00 <strong>API \uac8c\uc774\ud2b8\uc6e8\uc774 &#8211; Lambda<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/www.gyuroot.com\/wordpress\/wp-content\/uploads\/image-303.png?v=1688474097\" alt=\"\"\/><\/figure>\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"STEP_3_API_%EA%B2%8C%EC%9D%B4%ED%8A%B8%EC%9B%A8%EC%9D%B4%EC%97%90_%EC%A0%9C%ED%95%9C_%EC%B6%94%EA%B0%80%ED%95%98%EA%B8%B0-2\"><\/span>STEP 3: <strong>API \uac8c\uc774\ud2b8\uc6e8\uc774\uc5d0 \uc81c\ud55c \ucd94\uac00\ud558\uae30<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n<ul>\n<li>POST \uc804\uc6a9\uc73c\ub85c\ub9cc \uc791\ub3d9\ud558\uac8c \ub9cc\ub4e4\uae30<\/li>\n\n<\/ul>\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/www.gyuroot.com\/wordpress\/wp-content\/uploads\/image-304.png?v=1688474100\" alt=\"\"\/><\/figure>\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/www.gyuroot.com\/wordpress\/wp-content\/uploads\/image-305.png?v=1688474104\" alt=\"\"\/><\/figure>\n\n\n<blockquote class=\"wp-block-quote has-text-color\" style=\"color: rgb(0, 0, 0)\">\n<p>API \ubc30\ud3ec \ud6c4 \uacb0\uacfc<\/p>\n\n<\/blockquote>\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/www.gyuroot.com\/wordpress\/wp-content\/uploads\/image-306.png?v=1688474107\" alt=\"\"\/><\/figure>\n\n\n<ul>\n<li>\ubcf8\ubb38\ub9cc \uc800\uc7a5\ud558\ub3c4\ub85d \ub9cc\ub4e4\uae30<\/li>\n\n<\/ul>\n\n\n<blockquote class=\"wp-block-quote has-text-color\" style=\"color: rgb(0, 0, 0)\">\n<p>Lambda \ud568\uc218 \ucf54\ub4dc \uc218\uc815<\/p>\n\n<\/blockquote>\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/www.gyuroot.com\/wordpress\/wp-content\/uploads\/image-307.png?v=1688474110\" alt=\"\"\/><\/figure>\n\n\n<blockquote class=\"wp-block-quote has-text-color\" style=\"color: rgb(0, 0, 0)\">\n<p>\ucf54\ub4dc \uc218\uc815\ud6c4 \ud14c\uc2a4\ud2b8 Postman \u2192 DynamoDB \ud655\uc778<\/p>\n\n<\/blockquote>\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/www.gyuroot.com\/wordpress\/wp-content\/uploads\/image-308-1024x553.png?v=1688474115\" alt=\"\"\/><\/figure>\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/www.gyuroot.com\/wordpress\/wp-content\/uploads\/image-309.png?v=1688474117\" alt=\"\"\/><\/figure>\n\n\n<ul>\n<li>API \ud0a4\ub97c \uc774\uc6a9\ud55c \uc778\uc99d \ucd94\uac00\ud558\uae30<\/li>\n\n<\/ul>\n\n\n<blockquote class=\"wp-block-quote has-text-color\" style=\"color: rgb(0, 0, 0)\">\n<p>API Gateway\uc5d0\uc11c API \ud0a4\uac00 \ud544\uc694\ud568 <code>false<\/code> \u2192 <code>true<\/code> \ub85c \ubcc0\uacbd\ud6c4 API \ubc30\ud3ec<\/p>\n\n<\/blockquote>\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/www.gyuroot.com\/wordpress\/wp-content\/uploads\/image-310.png?v=1688474120\" alt=\"\"\/><\/figure>\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/www.gyuroot.com\/wordpress\/wp-content\/uploads\/image-311.png?v=1688474124\" alt=\"\"\/><\/figure>\n\n\n<blockquote class=\"wp-block-quote has-text-color\" style=\"color: rgb(0, 0, 0)\">\n<p>\uc0ac\uc6a9\ub7c9 \uacc4\ud68d \uc0dd\uc131<\/p>\n\n<\/blockquote>\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/www.gyuroot.com\/wordpress\/wp-content\/uploads\/image-312.png?v=1688474127\" alt=\"\"\/><\/figure>\n\n\n<blockquote class=\"wp-block-quote has-text-color\" style=\"color: rgb(0, 0, 0)\">\n<p>\uc2a4\ud14c\uc774\uc9c0 \uc5f0\uacb0<\/p>\n\n<\/blockquote>\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/www.gyuroot.com\/wordpress\/wp-content\/uploads\/image-313.png?v=1688474129\" alt=\"\"\/><\/figure>\n\n\n<blockquote class=\"wp-block-quote has-text-color\" style=\"color: rgb(0, 0, 0)\">\n<p>\uc0ac\uc6a9\ub7c9 \uacc4\ud68d API \ud0a4<\/p>\n\n<\/blockquote>\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/www.gyuroot.com\/wordpress\/wp-content\/uploads\/image-314.png?v=1688474133\" alt=\"\"\/><\/figure>\n\n\n<blockquote class=\"wp-block-quote has-text-color\" style=\"color: rgb(0, 0, 0)\">\n<p>API Key \ubcf5\uc0ac<\/p>\n\n<\/blockquote>\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/www.gyuroot.com\/wordpress\/wp-content\/uploads\/image-315.png?v=1688474137\" alt=\"\"\/><\/figure>\n\n\n<blockquote class=\"wp-block-quote has-text-color\" style=\"color: rgb(0, 0, 0)\">\n<p>\ud14c\uc2a4\ud2b8 \uc9c4\ud589<\/p>\n\n<\/blockquote>\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/www.gyuroot.com\/wordpress\/wp-content\/uploads\/image-316.png?v=1688474140\" alt=\"\"\/><\/figure>\n\n\n<ul>\n<li>\uad8c\ud55c \ubd80\uc5ec\uc790\ub97c \uc774\uc6a9\ud55c \uc778\uc99d \ubd80\uc5ec\ud558\uae30 (optional)<\/li>\n\n<\/ul>\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/www.gyuroot.com\/wordpress\/wp-content\/uploads\/image-317.png?v=1688474144\" alt=\"\"\/><\/figure>\n\n\n<ol>\n<li>Amazon Cognito \uc0ac\uc6a9\uc790 \ud480 \uc0dd\uc131<\/li>\n\n<\/ol>\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/www.gyuroot.com\/wordpress\/wp-content\/uploads\/image-318-1024x765.png?v=1688474148\" alt=\"\"\/><\/figure>\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/www.gyuroot.com\/wordpress\/wp-content\/uploads\/image-319-752x1024.png?v=1688474154\" alt=\"\"\/><\/figure>\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/www.gyuroot.com\/wordpress\/wp-content\/uploads\/image-320-701x1024.png?v=1688474160\" alt=\"\"\/><\/figure>\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/www.gyuroot.com\/wordpress\/wp-content\/uploads\/image-321-1024x692.png?v=1688474164\" alt=\"\"\/><\/figure>\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/www.gyuroot.com\/wordpress\/wp-content\/uploads\/image-322-478x1024.png?v=1688474170\" alt=\"\"\/><\/figure>\n\n\n<ol>\n<li>Amazon Cognito \ub9ac\uc18c\uc2a4 \uc11c\ubc84 \uc124\uc815<\/li>\n\n<\/ol>\n\n\n<blockquote class=\"wp-block-quote has-text-color\" style=\"color: rgb(0, 0, 0)\">\n<p>\ub9ac\uc18c\uc2a4 \uc11c\ubc84 \uc0dd\uc131<\/p>\n\n<\/blockquote>\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/www.gyuroot.com\/wordpress\/wp-content\/uploads\/image-323-893x1024.png?v=1688474174\" alt=\"\"\/><\/figure>\n\n\n<blockquote class=\"wp-block-quote has-text-color\" style=\"color: rgb(0, 0, 0)\">\n<p>\uc571 \ud074\ub77c\uc774\uc5b8\ud2b8 \uc0ac\uc6a9\uc790 \uc9c0\uc815 \ubc94\uc704 \uc124\uc815<\/p>\n\n<\/blockquote>\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/www.gyuroot.com\/wordpress\/wp-content\/uploads\/image-324-607x1024.png?v=1688474181\" alt=\"\"\/><\/figure>\n\n\n<ol>\n<li>API \uad8c\ud55c \ubd80\uc5ec\uc790 \uc0dd\uc131<\/li>\n\n<\/ol>\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/www.gyuroot.com\/wordpress\/wp-content\/uploads\/image-325-1024x639.png?v=1688474184\" alt=\"\"\/><\/figure>\n\n\n<ol>\n<li>API \uc2b9\uc778 \uc124\uc815 \ubcc0\uacbd<\/li>\n\n<\/ol>\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/www.gyuroot.com\/wordpress\/wp-content\/uploads\/image-326-1024x642.png?v=1688474188\" alt=\"\"\/><\/figure>\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/www.gyuroot.com\/wordpress\/wp-content\/uploads\/image-327-1024x658.png?v=1688474192\" alt=\"\"\/><\/figure>\n\n\n<ol>\n<li>API \ubc30\ud3ec<\/li>\n\n<\/ol>\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/www.gyuroot.com\/wordpress\/wp-content\/uploads\/image-328-1024x400.png?v=1688474196\" alt=\"\"\/><\/figure>\n\n\n<ol>\n<li>API \ud14c\uc2a4\ud2b8<\/li>\n\n<\/ol>\n\n\n<blockquote class=\"wp-block-quote has-text-color\" style=\"color: rgb(0, 0, 0)\">\n<p>Amazon Cognito \uc0ac\uc6a9\uc790 \uac00\uc785\n\nCognito \ud638\uc2a4\ud305 \ud398\uc774\uc9c0\ub85c \uc811\uc18d\ud558\uc5ec Sign up \uc9c4\ud589<\/p>\n\n<\/blockquote>\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/www.gyuroot.com\/wordpress\/wp-content\/uploads\/image-329-1024x368.png?v=1688474200\" alt=\"\"\/><\/figure>\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-3\">\n<div class=\"wp-block-column is-layout-flow\">\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/www.gyuroot.com\/wordpress\/wp-content\/uploads\/image-330.png?v=1688474203\" alt=\"\"\/><\/figure>\n\n<\/div>\n\n\n<div class=\"wp-block-column is-layout-flow\">\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/www.gyuroot.com\/wordpress\/wp-content\/uploads\/image-331.png?v=1688474205\" alt=\"\"\/><\/figure>\n\n<\/div>\n\n<\/div>\n\n\n<blockquote class=\"wp-block-quote has-text-color\" style=\"color: rgb(0, 0, 0)\">\n<p>Amazon Cognito \uc0ac\uc6a9\uc790 \ub85c\uadf8\uc778<\/p>\n\n<\/blockquote>\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-6\">\n<div class=\"wp-block-column is-layout-flow\">\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/www.gyuroot.com\/wordpress\/wp-content\/uploads\/image-333.png?v=1688475138\" alt=\"\"\/><\/figure>\n\n<\/div>\n\n\n<div class=\"wp-block-column is-layout-flow\">\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/www.gyuroot.com\/wordpress\/wp-content\/uploads\/image-334.png?v=1688475141\" alt=\"\"\/><\/figure>\n\n<\/div>\n\n<\/div>\n\n\n<blockquote class=\"wp-block-quote has-text-color\" style=\"color: rgb(0, 0, 0)\">\n<p><a href=\"http:\/\/localhost\/\">http:\/\/localhost<\/a>\ub85c redirect \ub418\uba70, \uad8c\ud55c \ubd80\uc5ec \ucf54\ub4dc \ud68d\ub4dd<\/p>\n\n<\/blockquote>\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/www.gyuroot.com\/wordpress\/wp-content\/uploads\/image-335.png?v=1688475144\" alt=\"\"\/><\/figure>\n\n\n<blockquote class=\"wp-block-quote has-text-color\" style=\"color: rgb(0, 0, 0)\">\n<p>\uad8c\ud55c \ubd80\uc5ec \ucf54\ub4dc\ub97c \uc0ac\uc6a9\ud558\uc5ec \ud1a0\ud070 \ud68d\ub4dd<\/p>\n\n<\/blockquote>\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/www.gyuroot.com\/wordpress\/wp-content\/uploads\/image-336-1024x414.png?v=1688475149\" alt=\"\"\/><\/figure>\n\n\n<blockquote class=\"wp-block-quote has-text-color\" style=\"color: rgb(0, 0, 0)\">\n<p>\uc561\uc138\uc2a4 \ud1a0\ud070\uc744 \uc0ac\uc6a9\ud558\uc5ec API \ud638\ucd9c<\/p>\n\n<\/blockquote>\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/www.gyuroot.com\/wordpress\/wp-content\/uploads\/image-337-1024x206.png?v=1688475154\" alt=\"\"\/><\/figure>\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-wide\"\/>\n\n\n<h1 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"_TROUBLE_SHOOTING_LOG\"><\/span># TROUBLE SHOOTING LOG<span class=\"ez-toc-section-end\"><\/span><\/h1>\n\n\n<p class=\"has-background\" style=\"background-color: rgb(251, 243, 219)\">&#x1f4a1; API Key \uc774\uc6a9\ud558\uc5ec Postman\uc5d0\uc11c \ud14c\uc2a4\ud2b8 \uc9c4\ud589\uc2dc Key \uac12\uc744 x-api-key\ub85c \uc0ac\uc6a9\ud574\uc57c \ud568<\/p>\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"%EC%9B%90%EC%9D%B8\"><\/span>\uc6d0\uc778<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n<blockquote class=\"wp-block-quote has-text-color\" style=\"color: rgb(0, 0, 0)\">\n<p>API Key \uc774\ub984\uc73c\ub85c \uc778\uc99d\ud5e4\ub354\uc5d0 \ub123\uc5b4\uc11c POST\ub97c \uc9c4\ud589\ud558\uba74 \uc778\uc99d \uc548\ub428<\/p>\n\n<\/blockquote>\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"%ED%95%B4%EA%B2%B0_%EB%B0%A9%EC%95%88\"><\/span>\ud574\uacb0 \ubc29\uc548<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/www.gyuroot.com\/wordpress\/wp-content\/uploads\/image-338-1024x560.png?v=1688475158\" alt=\"\"\/><\/figure>\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-wide\"\/>\n\n\n<h1 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"References\"><\/span>#References<span class=\"ez-toc-section-end\"><\/span><\/h1>\n\n\n<ul>\n<li><a href=\"https:\/\/serverlessland.com\/patterns\/lambda-dynamodb\">https:\/\/serverlessland.com\/patterns\/lambda-dynamodb<\/a><\/li>\n\n\n<li><a href=\"https:\/\/docs.aws.amazon.com\/ko_kr\/apigateway\/latest\/developerguide\/api-gateway-create-api-from-example.html\">https:\/\/docs.aws.amazon.com\/ko_kr\/apigateway\/latest\/developerguide\/api-gateway-create-api-from-example.html<\/a><\/li>\n\n\n<li><a href=\"https:\/\/docs.aws.amazon.com\/ko_kr\/apigateway\/latest\/developerguide\/apigateway-integrate-with-cognito.html\">https:\/\/docs.aws.amazon.com\/ko_kr\/apigateway\/latest\/developerguide\/apigateway-integrate-with-cognito.html<\/a><\/li>\n\n\n<li><a href=\"https:\/\/docs.aws.amazon.com\/ko_kr\/cognito\/latest\/developerguide\/cognito-user-identity-pools.html\">https:\/\/docs.aws.amazon.com\/ko_kr\/cognito\/latest\/developerguide\/cognito-user-identity-pools.html<\/a><\/li>\n\n\n<li><a href=\"https:\/\/docs.aws.amazon.com\/ko_kr\/cognito\/latest\/developerguide\/token-endpoint.html\">https:\/\/docs.aws.amazon.com\/ko_kr\/cognito\/latest\/developerguide\/token-endpoint.html<\/a><\/li>\n\n<\/ul>\n\n","protected":false},"excerpt":{"rendered":"<p># \ud559\uc2b5 \ubaa9\ud45c # \ud574\uacb0 \uacfc\uc81c Step 1: API Gateway &#8211; Lambda \ubc30\ud3ec Instruction STEP 2: API \uac8c\uc774\ud2b8\uc6e8\uc774 &#8211; Lambda STEP 3: API \uac8c\uc774\ud2b8\uc6e8\uc774\uc5d0 \uc81c\ud55c \ucd94\uac00\ud558\uae30 \uc544\ub798 \uc138 \uac1c\ub294 \uaf2d \uc2e4\uc2b5\ud574 \ubcf4\uc138\uc694 # \uc2e4\uc2b5 \uc790\ub8cc sprint-serverless-apigateway # \uacfc\uc81c \ud56d\ubaa9\ubcc4 \uc9c4\ud589 \uc0c1\ud669 STEP 1 : API Gateway &#8211; Lambda \ubc30\ud3ec Instruction SAM(Serverless Application Model) sample code &#8230; <a title=\"[Sprint] API Gateway\uc640 \uc11c\ubc84\ub9ac\uc2a4 \uc560\ud50c\ub9ac\ucf00\uc774\uc158\" class=\"read-more\" href=\"https:\/\/www.gyuroot.com\/wordpress\/?p=1134\" aria-label=\"More on [Sprint] API Gateway\uc640 \uc11c\ubc84\ub9ac\uc2a4 \uc560\ud50c\ub9ac\ucf00\uc774\uc158\">Read more<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_eb_attr":""},"categories":[45],"tags":[],"_links":{"self":[{"href":"https:\/\/www.gyuroot.com\/wordpress\/index.php?rest_route=\/wp\/v2\/posts\/1134"}],"collection":[{"href":"https:\/\/www.gyuroot.com\/wordpress\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.gyuroot.com\/wordpress\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.gyuroot.com\/wordpress\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.gyuroot.com\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1134"}],"version-history":[{"count":1,"href":"https:\/\/www.gyuroot.com\/wordpress\/index.php?rest_route=\/wp\/v2\/posts\/1134\/revisions"}],"predecessor-version":[{"id":1179,"href":"https:\/\/www.gyuroot.com\/wordpress\/index.php?rest_route=\/wp\/v2\/posts\/1134\/revisions\/1179"}],"wp:attachment":[{"href":"https:\/\/www.gyuroot.com\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1134"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.gyuroot.com\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1134"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.gyuroot.com\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1134"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}