gpt4 book ai didi

java - 使用特定网络资源打开 URLConnection

转载 作者:行者123 更新时间:2023-11-30 11:55:59 26 4
gpt4 key购买 nike

我无法打开具有特定网络资源的 URLConnection。我得到了

java.net.ConnectException:连接超时:”。是因为该域阻止了直接 URL 连接吗?如果是这样,他们是如何阻止的?下面是我写的代码片段。

代码片段:

导入 java.io.;导入 java.net.;

公共(public)类 TestFileRead{

public static void main(String args[]){

try{

String serviceUrl = "http://xyz.com/examples.zip";
HttpURLConnection serviceConnection = (HttpURLConnection) new URL(serviceUrl).openConnection();
System.out.println(serviceConnection);
serviceConnection.addRequestProperty("User-Agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727)");

DataInputStream din=new DataInputStream(serviceConnection.getInputStream());
FileOutputStream fout=new FileOutputStream("downloaded");
DataOutputStream dout=new DataOutputStream(fout);
int bytes;
while(din.available()>0){
bytes=din.readByte();
dout.write(bytes);
}
}catch(Exception ex){
ex.printStackTrace();
}

}

最佳答案

您可能正在使用浏览器中的代理设置来访问 Yahoo 主页,这解释了为什么它在您的浏览器中工作,而不是在您的代码中工作。您需要为您的 Java 应用程序配置代理。

最简单的方法是在运行代码时设置系统属性 http.proxyHosthttp.proxyPort(在 Eclipse 中或从命令行运行时只需添加 -Dhttp.proxyHost=your.host.com -Dhttp.proxyPort=80) 你应该可以开始了。从您的浏览器配置/设置中选择代理设置。

编辑:This link在用 Java 处理代理时很好地解释了可能的解决方案。

关于java - 使用特定网络资源打开 URLConnection,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4735673/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com