awslabs / awslabs/aws-lambda-cpp

Lambda return types through HTTP API Gateway - only json array or json object are working , else error 500

Open
#118 3 comments 0 reactions 0 assignees View on GitHub
Dominant language
C++
Stars
465
Forks
98
Avg merge
12h 47m
Merged PRs (30d)
3

Description

I'd like to return binary data through the HTTP API Gateway (HTTP , NOT REST API!), but the response has to be a json object, always. Is there some workaround to make that happen like it is possible for the REST API ?

```
#include
using namespace aws::lambda_runtime;
static invocation_response my_handler(invocation_request const& req)
{
return invocation_response::success("binarygoeshere", "application/zip");
}

int main()
{
run_handler(my_handler);
return 0;
}
```
^this returns error code 500

Contributor guide

Open the contributing guide

Research direction

Start with invocation_response::success and the run_handler path shown in the example, then trace how the response is serialized for HTTP API Gateway. Check whether existing response-serialization tests cover non-JSON payloads. Done means establishing and testing a supported way for binary data with content type application/zip to avoid the HTTP 500 response.

Written by the indexing model from the issue text.

Assessment

Tech stack
aws, cpp
Domain
api, cloud
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.