เรากำลังใช้ NGINX เป็น reverse proxy โดยจะโอนสายจากภายนอกไปยัง Java microservices ภายในของเรา:
เราต้องการเพิ่มบริการพิเศษที่จะทำหน้าที่เป็น "คนกลาง" แต่เฉพาะในส่วนที่ร้องขอเท่านั้น มีวัตถุประสงค์เพื่อตกแต่งคำขอดั้งเดิม (ตรวจสอบสิทธิ์ เพิ่ม/แก้ไขส่วนหัว HTTP ตรวจสอบสิทธิ์การเข้าถึง) "งานตกแต่ง" เกี่ยวข้องกับตรรกะทางธุรกิจที่ซับซ้อนซึ่งไม่สามารถกำหนดค่าบน NGINX ได้
เราต้องการให้เรียกบริการเป็นอันดับแรก จากนั้นจึงส่งต่อการตอบสนอง (โดยเฉพาะส่วนหัว HTTP!) เป็นคำขอไปยังไมโครเซอร์วิสตัวใดตัวหนึ่ง อาจเลือกที่จะเรียกบริการที่จัดส่งด้วยเนื้อความดั้งเดิม แต่ด้วยส่วนหัว HTTP ที่ส่งคืนจากบริการตกแต่ง
เมื่อบริการส่งคืนข้อผิดพลาด HTTP บริการควรส่งคืนโดยตรงไปยังผู้โทรโดยไม่ต้องสั่งการ
บริการนี้ถูกนำมาใช้เป็นแอปพลิเคชัน Java Spring Boot เป็นบริการบนเว็บปกติ
เป็นไปได้ไหมที่จะกำหนดค่าใน NGINX และอย่างไร
เพื่อความชัดเจน: ฉันไม่ได้ถามเกี่ยวกับวิธีการใช้บริการเฉพาะนี้สิ่งที่ฉันต้องการคือเพียงรู้ว่า (และอย่างไร) สามารถกำหนดค่า NGINX เพื่อให้เรียกบริการอื่นก่อนที่จะส่งการโทร และ NGINX นั้นจะส่งส่วนหัว (และอาจรวมถึงเนื้อหา แต่ไม่จำเป็น) ที่ส่งคืนจากบริการนี้ไปยังการโทร