Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ssh/2.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 HTTPURLConnection是否通过SSH隧道?_Java_Ssh_Httpurlconnection - Fatal编程技术网

Java HTTPURLConnection是否通过SSH隧道?

Java HTTPURLConnection是否通过SSH隧道?,java,ssh,httpurlconnection,Java,Ssh,Httpurlconnection,我有一个程序需要访问谷歌api,但由于我在中国,所以我必须使用ssh/vpn。我使用英华客户端打开了ssh,我可以在浏览器中访问api。但当我运行java代码时,它抛出了一个异常:网络不可访问。 有人能帮我吗 ps:我没有为httpurlconnection设置代理您必须将java中的SOCKS代理设置为您的ssh隧道和端口 见第2.4章: 有两个与SOCKS相关的系统属性: socksProxyHost,用于SOCKS代理服务器的主机名 端口号的socksProxyPort,默认值为1080

我有一个程序需要访问谷歌api,但由于我在中国,所以我必须使用ssh/vpn。我使用英华客户端打开了ssh,我可以在浏览器中访问api。但当我运行java代码时,它抛出了一个异常:网络不可访问。 有人能帮我吗


ps:我没有为httpurlconnection设置代理

您必须将java中的SOCKS代理设置为您的ssh隧道和端口

见第2.4章:

有两个与SOCKS相关的系统属性:

socksProxyHost,用于SOCKS代理服务器的主机名

端口号的socksProxyPort,默认值为1080


如果浏览器通过该通道上的代理工作,则HttpURLConnection需要通过同一个代理。如果没有,那么如果它访问相同的主机和端口,它应该可以工作。谢谢你的提示。我得到了英华客户端的本地端口65509,当我像这样设置代理时,它会工作:proxy proxy=new ProxyProxy.Type.SOCKS,new inetsocketaddress 127.0.0.1,65509;