小编Vla*_*ady的帖子

在 AWS ApiGateway 中更改响应“授权标头中不是有效的键=值对(缺少等号)”

我读过其他类似的帖子,其中包含完全相同的错误消息,但我的问题不同。

我在https://XXXXXXXX.execute-api.us-east-1.amazonaws.com/xxxx/users中有一个 AWS ApiGateway (从现在起我将其称为/users)。

我已经使用 Cognito 授权实现了 ApiGateway 到 Lambda 脚本,它们工作没有问题,例如:

  • /users/me-> 返回当前登录用户的数据

问题是当我在 ApiGateway 中调用不存在的路由时,例如:

  • /users/mine123-> 它返回

{“message”:“授权标头中的‘my-cognito-user-id-token’不是有效的键=值对(缺少等号):‘Bearer my-cognito-user-id-token’。” }

我的问题是...当 ApiGateway 中的路由不存在时,有没有办法返回 NotFound 或 BadRequest 错误?

我认为可以实现任何资源,但是,有没有一种“干净”的方法可以在没有任何资源的情况下实现它?


编辑1:

我也尝试了 Api Gateway 响应。我设置了自定义响应,状态错误代码 404 表示“未找到资源”,但 Api Gateway 仍然返回403 Forbidden。

找不到资源配置

编辑2

我也已经配置了4XX响应:

资源 4XX

API Gateway 总是返回 403 错误并显示此消息(正如一般 4XX 错误所预期的那样),但是我认为这没有意义,因为Forbidden这不是一个真正的错误,而是一个NotFoundorBadRequest错误。

例如,

amazon-web-services

6
推荐指数
1
解决办法
2万
查看次数

标签 统计

amazon-web-services ×1