CodeGenieApp / CodeGenieApp/serverless-express

Lambda@Edge origin response event errors out with 502 error because read-only header was deleted

Abierto
#369 2 comentarios 0 reacciones 0 asignados Ver en GitHub
bug
Lenguaje dominante
JavaScript
Estrellas
5.3k
Forks
676
Métricas de merge de PR
Sin PR fusionados en 30 d

Descripción

The Cloudfront request responds with:
```The Lambda function result failed validation: The function tried to add, delete, or change a read-only header. We can't connect to the server for this app or website at this time. There might be too much traffic or a configuration error. Try again later, or contact the app or website owner.```

From CloudWatch logs:
```ERROR Validation error: Lambda function result failed validation, the function tried to delete read-only header, headerName : Transfer-Encoding.```

I've figured out a workaround that is to just copy the header manually, but I wonder if the library should've taken care of that itself?

```js
import { getCurrentInvoke } from '@vendia/serverless-express';

router.get('/*', (req, res) => {
const { event } = getCurrentInvoke();

if (event.Records[0].cf.response.headers['transfer-encoding']) {
res.setHeader(
'Transfer-Encoding',
event.Records[0].cf.response.headers['transfer-encoding'][0].value,
);
}
```

Guía de contribución

Abrir la guía de contribución

Evaluación

Este issue todavía no se ha evaluado.

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.