我的 lambda 函数没有返回错误的请求

My lambda function is not returning bad request

我试图输入无效密码,甚至在我的 AWS Lambda 项目中抛出异常(请注意,这不是 AWS 无服务器项目)。无论我做什么,状态总是200:

代码如下:

这里是API网关:

我不知道如何提出这个 return 错误的请求:(

您正在 return 获得 200。您需要 return 类似 NotFound()BadRequest() 的东西。你只是 returning 一些(有效的)json.

所以我已经让它工作了,代码需要看起来像这样:

public APIGatewayProxyResponse TestAbcAsync(APIGatewayProxyRequest request, ILambdaContext context)
    {
        var loginRequest = JsonConvert.DeserializeObject<LoginRequest>(request.Body);
        return new APIGatewayProxyResponse
        {
            StatusCode = (int)HttpStatusCode.OK,
            Body = loginRequest.Username,
        };
    }

然后 API 网关中的设置需要检查:

应该检查"Use Lambda Proxy Integration"