我已经设置了一个快速/无服务器应用程序来检索GET请求上的pdf文件。但我只是检索一个损坏的repsonse pdf响应。我只是想知道我的设置是否正确以获得正确的响应。
我正在使用aws-serverless-express并希望将我的pdf缓冲区返回给客户端浏览器(它应该在浏览器中打开)
我的代码:
status = 200;
let fileName = "demo.pdf";
res.setHeader('Content-disposition', 'inline; filename="' + fileName + '"');
res.setHeader('Content-type', 'application/pdf');
res.setHeader('isBase64Encoded', true);//isBase64Encoded: true
let pdf = pdfBuffer.toString('base64');
res.status(status).send(pdf);
所以我正在向APIGW发送base64编码的字符串。我不确定我是否可以通过标头设置 isBase64Encoded 标志。我之前读过这篇文章,但我不太确定
之前我已完成整个程序,但没有使用aws-serverless-express(我可以轻松设置 isBase64Encoded 标志)
我还使用serverless-apigw-binary自动设置APIGW以正确解码base64编码数据
答案 0 :(得分:0)
lambda自动编码为base64,所以我不得不将其删除并直接发送缓冲区。