如何修改HttpUrlConnection的标头

时间:2009-01-26 15:26:52

标签: java http http-headers httpurlconnection

我试图改进Java Html文档,但我遇到了HttpUrlConntion的问题。有一点是,如果用户代理是Java VM,某些服务器会阻止请求。另一个问题是HttpUrlConnection未设置ReferrerLocation标头字段。由于几个站点使用这些字段来验证内容是从他们自己的站点访问的,因此我也被阻止了。据我所知,唯一的解决方案是替换HTTP协议的URL处理程序。或者有没有办法修改默认的HTTP Handler?

3 个答案:

答案 0 :(得分:42)

使用URL打开URL.openConnection。可选择转换为HttpURLConnection。致电URLConnection.setRequestProperty / addRequestProperty

默认的User-Agent标头值是从"http.agent"系统属性设置的。 PlugIn和WebStart允许您设置此属性。

答案 1 :(得分:2)

如果您使用Apache HttpClient来管理您的程序化HTTP连接,您将获得一个非常有用的API,它可以创建连接(以及可选的自动重新连接失败),设置标题,帖子与获取,方便的方法来检索返回内容等等。

答案 2 :(得分:0)

我解决了我的问题。我们可以将头部发送到application / json并将主体作为json对象传递。这只是解决了这个问题。