首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >aws api网关测试中请求体的不同

aws api网关测试中请求体的不同
EN

Stack Overflow用户
提问于 2018-11-12 04:42:10
回答 1查看 1.2K关注 0票数 3

我试图在我的API网关中添加一个POST HTTP方法。我在Python中使用SAM框架。

我发现,当从我的桌面(curl或postman)和AWS API网关‘测试’生成响应时,响应的“主体”是不同的。

现在,"POST“命令只打印lambda_handler接收的'event‘对象。(我使用一个对象来存储事件,如下所示)

代码语言:javascript
复制
def add(self):
    response = {
        "statusCode": 200,
        "body": json.dumps(self._event)
    }
    return response

当我使用API网关控制台的“TEST”选项时,输入如下:

代码语言:javascript
复制
{"username":"xyz","password":"xyz"}

我收到以下输出:

代码语言:javascript
复制
{
 "body": "{\"username\":\"xyz\",\"password\":\"xyz\"}",
<the rest of the response>
}

但是,当我发送卷发(或邮递员)请求时:

代码语言:javascript
复制
curl --header "Content-Type: application/json"   --request POST   --data '{"username":"xyz","password":"xyz"}' <aws api gateway link>

我得到以下答复:

代码语言:javascript
复制
{
"body": "eyJ1c2VybmFtZSI6Inh5eiIsInBhc3N3b3JkIjoieHl6In0="
<the rest of the response>
}

你为什么认为这两种测试有区别?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-11-12 05:39:18

Curl和Postman似乎是自动编码身份验证凭据的Base64。

反应是一样的。后一个响应是第一个响应的Base64 64编码令牌。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53256069

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档