Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/350.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何将所有发送到某个端口的请求捕获到本地计算机上的某个端口?_Java_Windows_Redirect_Port_Capture - Fatal编程技术网

Java 如何将所有发送到某个端口的请求捕获到本地计算机上的某个端口?

Java 如何将所有发送到某个端口的请求捕获到本地计算机上的某个端口?,java,windows,redirect,port,capture,Java,Windows,Redirect,Port,Capture,我想捕获在端口11111上连接的所有尝试,并将它们重定向到本地机器上运行的java应用程序 我计划用它来映射web请求 所以我想在我的浏览器中输入 然后将该请求重定向到在端口11111上运行的本地应用程序。我的本地应用程序需要知道请求的url 我正在运行windows 7 PC,因此需要windows而不是linux解决方案 编辑:额外信息 我希望这样做的原因是我希望能够通过http隧道访问一组intranet web服务。我希望能够从我的家用机器上完成这项工作,并让它通过隧道。我正在讨论的代理

我想捕获在端口11111上连接的所有尝试,并将它们重定向到本地机器上运行的java应用程序

我计划用它来映射web请求

所以我想在我的浏览器中输入

然后将该请求重定向到在端口11111上运行的本地应用程序。我的本地应用程序需要知道请求的url

我正在运行windows 7 PC,因此需要windows而不是linux解决方案

编辑:额外信息

我希望这样做的原因是我希望能够通过http隧道访问一组intranet web服务。我希望能够从我的家用机器上完成这项工作,并让它通过隧道。我正在讨论的代理不支持CONNECT方法

编辑:更多信息

我试图将所有请求重定向到的程序是我正在开发的一个java应用程序,因此理想情况下,我想要一个java解决方案来解决这个问题

如果java无法做到这一点,那么可以重定向到本地应用程序的第三方应用程序就足够了

干杯,
Peter

听起来最简单的解决方案是设置HTTP代理并通过它路由所有HTTP流量。在windows中,您可以直接在控制面板中的网络连接上设置代理。Firefox/chrome可能有自己的设置。至于Java中的代理实现,谷歌会四处寻找。有很多。像这个:

这可能不是你所希望的。我不确定Java能否以您想要的方式解决这个问题—您可能需要使用C或更容易访问操作系统内部的东西


也许你可以详细说明你为什么要这么做。。。也许有更好、更简单的方法来实现您的最终目标。

这不是Java问题。你可能会考虑修改你的标签,把更多的注意力放在你想要的帮助者上,这将是Windows用户。@ Ryan Stewart:没有java的方法来做这个吗?我的观点是java似乎与你的问题无关。您所说的是重新配置Windows、网卡或其他网络设备,以便以不同于正常情况的方式中继流量。如果你认为Java与此有关,那么我可能不明白你在问什么。@Ryan Stewart:我的理想解决方案是在我的项目中添加一些Java代码,这样当我的Java应用程序启动时,它会捕获连接到X端口上的外部服务器的所有尝试。如果Java无法做到这一点,那么我将使用其他工具,但是一些java代码是我首选的解决方案。假设Java可以通过Java.lang.Process执行任意命令,那么是的,您可能可以通过执行适当的OS命令来使用Java执行此操作。考虑到您的目标是Windows,我甚至认为您必须在所谈论的更改生效之前重新启动。我认为您可以不费吹灰之力地完成它,或者在Linux上重新启动。除此之外,考虑到我没有用Java进行大量的网络工作,我很有信心在纯Java中不会有这样的工作。如果我陷入困境,我可能会从这个项目中窃取一些代码。我希望在不实现实际http代理的情况下实现它,因为如果我也能支持非web流量,那就太好了。