4 ms·
Binary data is tricky with Lambda proxy (and by tricky I mean... I haven't gotten it to work). But I also haven't tried much. Typically best practice for me has
by throwaway2016a 10y ago
Binary data is tricky with Lambda proxy (and by tricky I mean... I haven't gotten it to work). But I also haven't tried much. Typically best practice for me has been:
- When dealing with uploads have an API call to get a pre-signed S3 upload URL
- When dealing with downloads using HATEOAS and/or the Location header to send the client to S3 to grab the actual file.
It requires some client-side designing around eventual consistency but it works well and is very scalable.
- breandr 10y agoYou need to specify your MIME type (most commonly, application/json) to be treated as binary (from console: API -> Binary Support). In your Lambda function: `callback(null, { body: base64EncodedBody, status: 200, headers: {}, isBase64Encoded: true })`
- wiredfool 10y agoThe mimetype of the response from lambda? Or the mimetype in the headers?