我正在测试我的 api 网关来调用 lambda 函数。我考试成功了。
然后我试图通过同一个 lambda 连接到 postgresql
import json
import psycopg2
db_host = "hostname"
db_port = 5432
db_name ="db name"
db_user ="user"
db_pass ="password"
def connect():
conn = None
try :
conn = psycopg2.connect("dbname={} user={} host={} password={}".format(db_name,db_user,db_host,db_pass))
except :
print("connetion error")
return conn
print("Loading function")
def lambda_handler(event, context):
# paring query from the string
name = event['queryStringParameters']['name']
action = event['queryStringParameters']['action']
print('name = '+name )
print('action = '+action)
# body of the response object
transactionResponse = {}
transactionResponse['name'] = name
transactionResponse['action'] = action
transactionResponse['message'] = 'Lambda called from api_gateway'
# construting Http response
responseObject = {}
responseObject['statusCode'] = 200
responseObject['headers'] {}
responseObject['headers']['Content-Type'] = 'application/json'
responseObject['body'] = json.dumps(transactionResponse)
# return the response object
return responseObject
当我试图通过我得到的 API 端点触发它时
Unable to import module 'lambda_function': No module named 'psycopg2'
然后我继续通过下载所需的包然后上传一个 zip 文件来构建我的 lambda 函数。
当我尝试调用相同的方法来触发我得到的 lambda
Runtime.ImportModuleError: Unable to import module 'lambda_function': No module named 'lambda_function'
不知道 lamda_function 是什么。
有人能建议我摆脱这种低迷吗?或为我提供一种通过 API 网关触发器中的 lambda 连接到 RDS 的方法

