Node.js 在API网关中设置映射模板后无法获取标头
我想调用一个带有标题和主体的api,用于管理用户删除如下用户数据:Node.js 在API网关中设置映射模板后无法获取标头,node.js,amazon-web-services,aws-lambda,aws-api-gateway,Node.js,Amazon Web Services,Aws Lambda,Aws Api Gateway,我想调用一个带有标题和主体的api,用于管理用户删除如下用户数据: apiClient.post('***endpoint***', { tableName: '***', id: id }, { headers: { Authorization: accessToken } }) 在我编写任何访问数据库的函数之前,我想先在lambda中显示细节: var AWS = require('aws-sdk') AWS.co
apiClient.post('***endpoint***',
{ tableName: '***',
id: id },
{
headers: {
Authorization: accessToken
}
})
在我编写任何访问数据库的函数之前,我想先在lambda中显示细节:
var AWS = require('aws-sdk')
AWS.config.update({ region: '***' })
var ddb = new AWS.DynamoDB()
exports.handler = async function (event , ctx , callback) {
return event
};
在APIGATEWAY中,我设置了以下内容
{
"Authorization" : "$input.params('Authorization'),
"body" : $input.json('$')
}
集成请求中的内容类型为application/json
然后当我在方法测试中测试api时。
在标题中,我键入“testaccesstoken”
,
在body中,我键入{“id”:“1”,“tableName”:“test”}
,
但结果是{
“授权”:“授权”,
“正文”:{
“id”:“1”,
“表名”:“测试”
}
}
有人能解释一下为什么我仍然不能拿到头球吗?
同样,当我在poseman中测试时,我会这样做:,
我得到一个错误
我已经部署了API,但为什么我不能在postman中测试???我注意到您提到了映射模板和传递行为,但没有提到在方法请求中映射它,也没有提到API网关中Integration Request中的header字段。最近有一个我认为可能会给你一些东西来验证设置是否正确,因为我怀疑这可能是问题所在
它还包括使用代理集成,如果评论中有更具体的问题,请告诉我,如果需要,我会调整我的答案 在邮递员中,将标题设置为
Authorization
而不是“Authorization”