建立函式
首先,在 AWS Lambda 建立一個函式。
- Function name:
GetStartedLambdaProxyIntegration
- Runtime: Node.js
- Execution role name:
GetStartedLambdaBasicExecutionRole
建立範例函式:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
| export const handler = function(event, context, callback) { console.log('Received event:', JSON.stringify(event, null, 2)); var res ={ "statusCode": 200, "headers": { "Content-Type": "*/*" } }; var greeter = 'World'; if (event.greeter && event.greeter!=="") { greeter = event.greeter; } else if (event.body && event.body !== "") { var body = JSON.parse(event.body); if (body.greeter && body.greeter !== "") { greeter = body.greeter; } } else if (event.queryStringParameters && event.queryStringParameters.greeter && event.queryStringParameters.greeter !== "") { greeter = event.queryStringParameters.greeter; } else if (event.multiValueHeaders && event.multiValueHeaders.greeter && event.multiValueHeaders.greeter != "") { greeter = event.multiValueHeaders.greeter.join(" and "); } else if (event.headers && event.headers.greeter && event.headers.greeter != "") { greeter = event.headers.greeter; } res.body = "Hello, " + greeter + "!"; callback(null, res); };
|
點選 Deploy
按鈕。
建立 API
到 API Gateway 建立一個 REST API。
建立 resource 如下:
- Resource path:
/
- Resource name:
helloworld
建立 method 如下:
- Method type:
ANY
- 啟用
Lambda proxy integration
功能
部署
點選 Deploy API 按鈕,並建立 stage 如下:
測試
使用 curl 測試。
1
| curl -X GET 'https://xxx.execute-api.ap-northeast-1.amazonaws.com/test/helloworld?greeter=Memo'
|
回應如下:
參考資料