在API Gateway授权中,如果Headers未被读取,可能是由于配置错误或代码问题导致的。以下是一些常见的解决方法,包含代码示例:
确保在API Gateway的设置中启用了所需的Headers。
检查Lambda函数的代码,确保正确地读取Headers。以下是一个Node.js Lambda函数的示例代码,演示如何读取Headers:
exports.handler = async(event) => {
// 从事件中获取Headers
const headers = event.headers;
// 打印Headers
console.log('Headers:', headers);
// 其他代码逻辑...
}
如果使用的是其他语言或框架,根据其相应的文档和示例代码,确保正确读取Headers。
如果使用了自定义授权函数(Custom Authorizer)来处理授权逻辑,确保在自定义授权函数代码中正确读取Headers。以下是一个Node.js自定义授权函数的示例代码:
exports.handler = async(event) => {
// 从事件中获取Headers
const headers = event.headers;
// 打印Headers
console.log('Headers:', headers);
// 其他授权逻辑...
// 返回授权结果
return {
// 授权策略...
};
}
请根据你的具体情况选择适合的解决方法,并根据示例代码进行相应的调整。