gpt4 book ai didi

amazon-web-services - AWS ApiGateway 中的更改响应 "not a valid key=value pair (missing equal-sign) in Authorization header"

转载 作者:行者123 更新时间:2023-12-04 08:17:04 37 4
gpt4 key购买 nike

我已经阅读了其他带有完全相同错误消息的类似帖子,但是我的问题有所不同。
我在 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' not avalid key=value pair (missing equal-sign) in Authorization header:'Bearer my-cognito-user-id-token'." }


    我的问题是... 当 ApiGateway 中的路由不存在时,有没有办法返回 NotFound 或 BadRequest 错误?
    我认为可以实现资源 ANY,但是, 有没有一种“干净”的方法可以在没有任何资源的情况下做到这一点?

    编辑 1:
    我也尝试了 Api Gateway 响应。我设置了一个自定义响应,状态错误代码 404 为 未找到资源 但 Api Gateway 仍然返回 403禁止 .
    Resource not found configuration
    编辑 2
    我已经有 4XX 也配置了响应:
    Resource 4XX
    并且 API Gateway 总是返回 403 错误以及此消息(正如一般 4XX 错误所预期的那样),但是我认为这没有意义,因为它不是真正的 Forbidden错误是 NotFoundBadRequest错误。
    例如,
  • 对 Github API 中不存在的路由的请求 https://api.github.com/ROUTE_THAT_DOESNT_EXIST返回 404 NotFound .
  • 对 StackExchange API 中不存在的路由的请求 https://api.stackexchange.com/ROUTE_THAT_DOESNT_EXIST返回 400 BadRequest .

  • 他们都没有返回 403 Forbidden .

    最佳答案

    错误信息 { "message": "token not a valid key=value pair Authorization header: 'Bearer token'.当“资源路径不存在”时抛出 status 403带有响应 header “x-amzn-ErrorType”=“IncompleteSignatureException”

    A request with an "Authorization" header is sent to an API resourcepath that doesn't exist.


    我们可以在“网关响应”部分自定义响应正文。对于这种情况,似乎没有特定的网关响应,如未经授权、无效签名等,因此我们需要配置 Default 4XX我们可以更新 status codeResponse Templates .与成功请求过程中的集成响应不同,错误网关响应模板 doesn't support full VTL模板,但只支持简单的占位符。 application/json 的示例配置
    {"message":"Invalid Resource","type": "$context.error.responseType","stage": "$context.stage"}
    Screenshot
    将返回
    {
    "message": "Invalid Resource",
    "type": "DEFAULT_4XX",
    "stage": "qa"
    }

    关于amazon-web-services - AWS ApiGateway 中的更改响应 "not a valid key=value pair (missing equal-sign) in Authorization header",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65660726/

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