繁体   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