gpt4 book ai didi

java.io.IOException : Server returned HTTP response code: 403 for URL

转载 作者:IT老高 更新时间:2023-10-28 20:38:15 62 4
gpt4 key购买 nike

我的代码是这样的:

URL url;
URLConnection uc;
StringBuilder parsedContentFromUrl = new StringBuilder();
String urlString="http://www.example.com/content/w2e4dhy3kxya1v0d/";
System.out.println("Getting content for URl : " + urlString);
url = new URL(urlString);
uc = url.openConnection();
uc.connect();
uc.getInputStream();
BufferedInputStream in = new BufferedInputStream(uc.getInputStream());
int ch;
while ((ch = in.read()) != -1) {
parsedContentFromUrl.append((char) ch);
}
System.out.println(parsedContentFromUrl);

但是当我尝试通过浏览器访问 URL 时没有问题,但是当我尝试通过 java 程序访问它时,它会抛出期望:

java.io.IOException: Server returned HTTP response code: 403 for URL

解决办法是什么?

最佳答案

uc.connect();uc.getInputStream(); 之间添加以下代码:

uc = url.openConnection();
uc.addRequestProperty("User-Agent",
"Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)");

但是,只允许某些类型的用户代理是个好主意。这将使您的网站安全并降低带宽使用率。

根据您是否不希望人们窃取您的内容和带宽,您可能希望从您的服务器中阻止一些可能的不良“用户代理”。但是,正如您在上面的示例中看到的那样,用户代理可能会被欺骗。

关于java.io.IOException : Server returned HTTP response code: 403 for URL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4797593/

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