簡體   English   中英

攔截所有傳出的HTTP調用Java

[英]Intercept all outgoing http calls java

類似於HttpFilter(javax.Servlet.Filter),當添加到web.xml中時,它可以獨立於框架(Spring / CXF / Jersy等)而攔截對JVM的任何傳入請求/傳出(作為響應),我試圖找到一個API可以攔截來自JVM的任何傳出HTTP調用,以獨立於框架添加/修改標頭。 通過代理路由請求聽起來也很麻煩。

在論壇中,經常會誤解“發出HTTP呼叫”一詞,因此,我以示例進行解釋。

讓我們假設有兩個JVM,jvm1和jvm2。 並且有從JVM1到JVM2的HTTP調用。 我想在調用發生之前攔截從JVM1建立的HTTP連接以修改標頭信息。 我不想將代碼綁定到特定的框架,這樣我就可以將攔截器像jar一樣捆綁在一起,並與應用程序團隊共享。 在web.xml中進行更改就可以了。

有什么建議么? 請幫忙!

兩種JVM都可以以任何方式使用java.net.Socketjava.net.ServerSocket進行通信,並且這里沒有辦法攔截任何內容。

如果通過(透明) 代理進行連接,則可以攔截任何HTTP通信。 代理將攔截任何內容,您可以修改任何內容。

我們選擇了Aspectj。 不是最好的解決方案,而是我們得到的唯一選擇。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM