2011-09-05 89 views
0

我有一个疑问,我想澄清。 我使用java编程,并试图访问受代理保护的URL。我想知道是否有可能通过URL知道代理设置是什么,然后通过代理设置访问该URL。关闭JAVA - 请求代理从URL

我想我没有解释清楚自己。

在我们的浏览器选项 - > LAN setings,我们可以把那里的代理服务器和端口和主机(这一个可以访问到这些信息与此代码:)

“System.setProperty(”java的.net.useSystemProxies“,”true“); System.out.println(“检测代理”); List pl = ProxySelector.getDefault()。select(new URI(“http://google.pt/”)); for(Proxy p:pl)System.out.println(p);代理p = null; if(pl.size()> 0)//使用第一个p = pl.get(0);的System.out.println(p.address());的System.out.println( “完成”); '

但我的问题是,当我使用“自动配置脚本”,并把脚本的路径。在这种情况下,a不能访问代理信息。我尝试在C#中做到这一点,我使用'WebRequest.GetSystemWebProxy()',它的工作原理。

我需要在java中工作吗?

+0

你是什么意思“正试图访问受代理保护的URL”? –

+1

URL无法告诉您您的代理服务器设置。您必须亲自了解这一点,或者自己设置代理,或者向网络管理员咨询。一旦你知道这些设置,这个链接将帮助你通过代理连接到URL - http://www.rgagnon.com/javadetails/java-0085.html。 –

回答

0

你不能从一个网址,以获取代理,但您可以从自动配置脚本(PAC)得到它时,你知道的网址

  • Here是一个网站,解析/验证这些脚本

  • Library这样做(蟒蛇)

  • Blog post如何解析PAC在Java中