aws-lambda-cpp icon indicating copy to clipboard operation
aws-lambda-cpp copied to clipboard

Function URL support: invocation_response::failure always returns "Internal Server Error"

Open instw opened this issue 1 year ago • 1 comments

I'm using the C++ framework to create a lambda that's using a Lambda Function URL. When there is an error (i.e. invocation_response::failure) , the HTTP response is always a "Internal Server Error". This seems to be because the response needs to be in a format as detailed in https://docs.aws.amazon.com/lambda/latest/dg/urls-invocation.html - which includes the "statusCode" etc.

Ideally, invocation_response::failure should at least set the "body" in the application/json response.

As a workaround, crafting the appropriate error payload using invocation_response::success works.

instw avatar Jul 31 '24 16:07 instw

Also invocation_response has a public constructor which you can pass it a payload and whether a success or a failure response.

marcomagdy avatar Aug 01 '24 23:08 marcomagdy