Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/http/4.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发送Tor NEWNYM请求_Java_Http_Tcp_Proxy_Tor - Fatal编程技术网

使用Java发送Tor NEWNYM请求

使用Java发送Tor NEWNYM请求,java,http,tcp,proxy,tor,Java,Http,Tcp,Proxy,Tor,我的应用程序成功地使用了Tor,但我想发送一个NEWNYM请求以获取新身份。我可以终止并重新启动进程,或者可能使用shell脚本,但我更喜欢使用本机Java 有一种方法,但我不太确定如何将其映射到Java连接类型。我想这与我的TorHTTP代码非常相似,但我对Java连接类型还不够熟悉,无法实现 // My starter code. public static String torNewIP() throws Exception { Proxy proxy = new Proxy(Pro

我的应用程序成功地使用了Tor,但我想发送一个NEWNYM请求以获取新身份。我可以终止并重新启动进程,或者可能使用shell脚本,但我更喜欢使用本机Java

有一种方法,但我不太确定如何将其映射到Java连接类型。我想这与我的TorHTTP代码非常相似,但我对Java连接类型还不够熟悉,无法实现

// My starter code.
public static String torNewIP() throws Exception {
   Proxy proxy = new Proxy(Proxy.Type.HTTP, 
              new InetSocketAddress(TOR_IP, TOR_CONTROL_PORT));     
   // This is how I open a web page using Tor, but the control
   // port is probably not HTTP.
   // HttpURLConnection connection = (HttpURLConnection) url.openConnection(proxy);
   // connection.connect();
   // Something like connection.send("NEWNYM");
}   

仔细检查以确保Tor使用选项ControlPort[Tor\u CONTROL\u PORT]运行

public static void torNewIP() throws Exception {
   Socket socket = new Socket();
   socket.connect(new InetSocketAddress(TOR_IP, TOR_CONTROL_PORT));
   socket.getOutputStream().write(new String("SIGNAL NEWNYM\r\n").getBytes());
   socket.close();
}
不完全确定原因,但可能需要一些时间才能按预期运行-可能需要10分钟的IP旋转。很抱歉,我无法提供更好的细节,但它对我有效