Cómo modificar las cabeceras de una petición con nginx

Escenario

Hay que migrar una servicio API a una nueva plataforma. Esto implica rehacer el código desde cero y al mismo tiempo respetar todos los endpoints y aceptar las peticiones de los clientes del API tal y como se estaban mandando hasta ahora.

Problema

Las peticiones del cliente vienen mal formadas: se estaban mandado usando el método POST, usando el valor «POST» para la clave «content-type» de la cabecera. «POST» no es un mime type conocido, por lo que el controlador devolvía una respuesta con el código de error 415 (Unsupported Media Type).

Solución

Para descubrir qué tipo de contenido se estaba mandando, primero tuve que añadir ese dato a los registros de servidor web (nginx): De esta manera pude confirmar que el tipo de contenido enviado era «POST»: Como ya he dicho, uno de los requisitos era respetar la manera en la que el cliente mandaba las peticiones, de modo que tuve que apañármelas a nivel de servidor para que, cuando llegara una petición con una cabecera cuya clave content-type fuera igual a «POST», cambiarla por «application/json». Con nginx es sencillo:

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *