gpt4 book ai didi

amazon-web-services - AWS API GATEWAY - 空响应正文

转载 作者:行者123 更新时间:2023-12-04 11:58:00 26 4
gpt4 key购买 nike

我正在使用节点无服务器和 python 在 AWS 上部署服务。
使用的服务:S3、API-Gateway、Cloudformation、Lambda。

问题是......我得到了空的响应体:

{
"statusCode": 200,
"isBase64Encoded": false,
"headers": {
"Content-Type": "application/json"
},
"body": "{}"
}

字段“body”是空的。当我用 POSTMAN 测试时也是如此。
但是当我在 lambda 上测试时它工作正常:
{
"statusCode": 200,
"isBase64Encoded": false,
"headers": {
"Content-Type": "application/json"
},
"body": "{\"55b7badc-75af-41c0-9877-af308264cb33\":\"0.4666666666666667\",\"4694e172-322e-4a51-930e-d3b9bfd3c2e6\":\"0.36363636363636365\",\"c5447cc5-936d-4aa6-97c4-3f51a7e7c283\":\"0.3\",\"6abf0893-5d32-4a43-942f-aaef4395d91d\":\"0.2727272727272727\",\"c0bf1214-fb41-48eb-b07d-f81b71ba0061\":\"0.25\"}"
}

这是 yml 文件:
service: collaborative

provider:
name: aws
runtime: python3.6
region: eu-west-1

defaults:
stage: dev1
region: eu-west-1

package:
include:
- collaborative
exclude:
- .git
- .idea
- .col_ser.txt

custom:
integration: lambda

functions:
collaborative:
name: lambda-collaborative
handler: handler.lambda_handler
events:
- http:
path: recommend_user
method: post
integration: lambda
cors: true
request:
template:
text/xhtml: '{ "stage" : "$context.stage" }'
application/json: '{ "httpMethod" : "$context.httpMethod" }'
response:
headers:
Access-Control-Allow-Origin: "'*'"
statusCodes:
400:
pattern: '.*wrong.*'
template:
application/json: >
#set ($errorMessageObj = $input.path('$.errorMessage'))
$errorMessageObj

Resources:
ApiGatewayMethodRecommenduserPost:
Type: AWS::ApiGateway::Method
Properties:
Integration:
IntegrationHttpMethod: POST
Type: lambda

最佳答案

如果您从 API Gateway 异步调用了 lambda 函数,那么收到空响应是正常的,因为在这种情况下,API Gateway 不会等待 lambda 响应,而只是返回一个空响应。但是,您可以根据状态代码从 API 网关创建自己的集成响应模板。
如果您已同步调用但仍未收到响应,那么您还可以从 API 网关调用您的 lambda 函数并观察您的 lambda 函数是否正常工作。

关于amazon-web-services - AWS API GATEWAY - 空响应正文,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56538294/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com