AWSLambda使用“Samlocal”——如何通过HTTPS连接
创始人
2024-09-26 08:30:42
0

在本地使用“sam local”测试AWS Lambda时,需要通过HTTPS连接。要实现此目标,需要使用本地 TLS 证书以及在 Lambda 中启用 HTTP API。

以下是具体步骤和代码示例:

步骤1:安装 mkcert 和 nss (MacOS 用户可以使用 homebrew 安装):

brew install mkcert nss

步骤2:创建本地的 TLS 证书:

mkcert -install # 安装根证书 mkcert -key-file key.pem -cert-file cert.pem localhost 127.0.0.1 # 为本地 HTTPS 服务器创建证书

步骤3:将证书添加到 Lambda 函数的“环境变量”中:

"environment": { "SSL_CERT_FILE": "/etc/ssl/certs/ca-certificates.crt", "SSL_KEY_FILE": "/var/task/key.pem", "SSL_CRT_FILE": "/var/task/cert.pem" }

步骤4:在 Lambda 函数中启用 HTTP API:

const http = require('http') const https = require('https') const express = require('express') const app = express()

// Redirect HTTP to HTTPS http.createServer((req, res) => { res.writeHead(301, { "Location": "https://" + req.headers.host + req.url }) res.end() }).listen(8080)

// HTTPS server https.createServer({ key: fs.readFileSync(process.env.SSL_KEY_FILE), cert: fs.readFileSync(process.env.SSL_CRT_FILE), ca: [ fs.readFileSync(process.env.SSL_CERT_FILE) ] }, app).listen(8443)

步骤5:通过 HTTPS 连接 Lambda 函数:

在本地使用 cURL 命令进行测试:

curl -k https://localhost:8443/my-function

注意:这里使用了 curl 的 "-k" 参数禁用了 SSL/TLS 的证书验证。在实际的应用场景中,我们不建议这样做,因为这可能导致安全漏洞。

以上是使用“sam local”测试 AWS Lambda 并通过 HTTPS 连接的完整步骤和代码示例。

相关内容

热门资讯

辅助开挂!宝宝浙江游戏开挂器,... 辅助开挂!宝宝浙江游戏开挂器,德普之星有透视辅助吗(透视)开挂辅助安装(有挂细节);致您一封信;亲爱...
玩家必备科普“steampok... 玩家必备科普“steampokermaster辅助”开挂(透视)辅助平台(科技教程有挂规律) 【无需...
开挂辅助软件"wep... 开挂辅助软件"wepoker智能辅助插件"开挂(透视)辅助工具(真的有挂) 【无需打开直接搜索加薇1...
开挂辅助!蛮王大厅辅助插件,德... 开挂辅助!蛮王大厅辅助插件,德普之星透视免费(透视)开挂辅助软件(有挂讲解);超受欢迎的蛮王大厅辅助...
玩家必看攻略“德州私人局怎么透... 您好:这款游戏是可以开挂的,确实是有挂的,很多玩家在这款游戏中打牌都会发现很多用户的牌特别好,总是好...
开挂辅助插件"wep... wepoker怎么增加运气是一款专注玩家量身打造的游戏记牌类型软件,在wepoker怎么增加运气这款...
辅助开挂!方片十三张外挂,聚星... 辅助开挂!方片十三张外挂,聚星ai辅助工具激活码(透视)开挂辅助工具(有人有挂);一、方片十三张外挂...
指导大家“aapoker透视怎... 指导大家“aapoker透视怎么用”开挂(透视)辅助神器(系统教程有挂教学);打开点击测试直接进入微...
开挂辅助软件"wep... 开挂辅助软件"wepoker软件辅助程序"开挂(透视)辅助插件(存在有挂)您好:wepoker软件辅...
开挂辅助!天天微友插件,wpk... 开挂辅助!天天微友插件,wpk私人辅助(透视)开挂辅助插件(有挂分享);1、这是跨平台的天天微友插件...