Folosim NGINX ca proxy invers, acesta trimite apelurile din exterior către microserviciile noastre interne Java:
Am dori să adăugăm un serviciu special care să servească drept „om-in-the-middle”, dar numai pentru partea de solicitare. Scopul este de a decora cererea originală (autentificare, adăugare/modificare anteturi HTTP, verificare drepturi de acces). „Sarcinile decorative” implică o logică de afaceri complicată care nu poate fi configurată pe NGINX în sine.
Dorim ca serviciul să fie apelat mai întâi, iar apoi să îi trimitem răspunsul (în special anteturile HTTP!) ca o solicitare către unul dintre microservicii. Poate și opțional să apelați serviciile expediate cu corpul original, dar cu anteturile HTTP returnate de la serviciul decorator.
Când serviciul returnează o eroare HTTP, ar trebui să revină direct la apelant fără a trimite.
Serviciul este implementat ca o aplicație Java Spring Boot. Este un serviciu web obișnuit.
Este posibil să fie configurat în NGINX și cum?
Pentru a fi clar: nu întreb despre cum să implementez acest serviciu specific.Ceea ce am nevoie este doar să știu dacă (și cum) poate fi configurat NGINX astfel încât să apeleze un alt serviciu înainte de a trimite apelul și că NGINX trece anteturile (și poate și corpul, dar nu neapărat) returnate de la acest serviciu la apel.