我使用 AWS Lambda API Gateway 制作了一個 REST API。
我的 API 網關Integration Request是LAMBDA_PROXY型別,
我像這樣在 Lambda 中使用引數。(myparam是串列型別)
def lambda_handler(event, context):
# TODO implement
try:
myparam = event['multiValueQueryStringParameters']['param1']
#...
我像這樣在python中測驗了我的REST API。
url = 'https://***.amazonaws.com/default/myAPI'
param = {'param1':['1','2']}
res = requests.get(url=url,params=param).json()
print(res)
有用。但是當我嘗試用這樣的另一種方式時,
url = 'https://***.amazonaws.com/default/myAPI?param1=1,2'
res = requests.get(url=url).json()
print(res)
這種方式行不通。如果我想直接將引數插入url,如何查詢引數?
uj5u.com熱心網友回復:
這些拖車請求并不等同。為了證明這一點,我們可以列印第一個請求的格式化 URL:
url = 'https://***.amazonaws.com/default/myAPI'
param = {'param1':['1','2']}
res = requests.get(url=url,params=param).json()
# Print the request URL
print(res.request.url)
這將列印如下內容:
https://***.amazonaws.com/myAPI?param1=1¶m1=2
因此,在您的第二個片段中,您可能希望按如下方式創建 URL:
url = 'https://***.amazonaws.com/myAPI?param1=1¶m1=2'
res = requests.get(url=url).json()
print(res)
如果您想用逗號分隔引數,則 for 的值param1將是字串 ( '1,2'),而不是串列。
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/482590.html
標籤:亚马逊网络服务 aws-lambda aws-api-网关
上一篇:S3URL-使用python下載
