如何修改HttpUrlConnection的标头
我试图改进Java Html文档,但我遇到了HttpUrlConntion
问题。 有一件事是,如果用户代理是Java VM,某些服务器会阻止请求。 另一个问题是HttpUrlConnection
没有设置Referrer
或Location
头字段。 由于几个站点使用这些字段来validation内容是从他们自己的站点访问的,因此我也在此处被阻止。 据我所知,唯一的解决方案是替换HTTP协议的URL处理程序。 或者有没有办法修改默认的HTTP Handler?
使用URL.openConnection
打开URL
。 可选择HttpURLConnection
为HttpURLConnection
。 调用URLConnection.setRequestProperty
/ addRequestProperty
。
默认的User-Agent标头值是从"http.agent"
系统属性设置的。 PlugIn和WebStart允许您设置此属性。
如果您使用Apache HttpClient来管理程序化HTTP连接,您将获得一个非常有用的API,它可以创建连接(并且可以在失败时自动重新连接),设置Headers,posts vs gets,检索返回内容的便捷方法等等。
我解决了我的问题。 我们可以将头部发送到application / json并将主体作为json对象传递。 这只是解决了这个问题。