why this code is not working for file download through api gateway in pdf format....could you please answer this

0

try { const headObject = await s3.headObject(params).promise(); const fileSize = headObject.ContentLength;

const readStream = await s3.getObject(params).promise()//.createReadStream(); console.log(readStream) //const fileContent = readStream.Body.toString('utf-8');

// Set headers for the response const headers = { //'Content-Length': fileContent, 'Content-Type': 'application/pdf', //'Content-Disposition': attachment; filename=${key}, 'Accept': 'application/pdf' //'application/octet-stream' }; const imageBuffer = Buffer.from(readStream.Body); const imageBase64 = await base64.fromByteArray(imageBuffer).toString('utf-8'); console.log(imageBase64)

const response={ statusCode: 200, headers, body: imageBase64//readStream//.toString("base64"), //isBase64Encoded: true, }; //const str = await response.body.transformToString(); //console.log(response) return response // Pipe the S3 object stream to the response //readStream.pipe(callback.response); } catch (error) { console.error(error); // callback(error); }

}; exports.handler=handle

1 回答
1

What errors are you getting? Did you take in count the limitations of payload size for Lambdas and API Gateway?

已回答 1 年前

您未登录。 登录 发布回答。

一个好的回答可以清楚地解答问题和提供建设性反馈,并能促进提问者的职业发展。

回答问题的准则