HttpURLConnection碰到连续302跳转的问题
来源:互联网 发布:我的世界pe一键挖矿js 编辑:程序博客网 时间:2024/06/05 16:45
用HttpURLConnection联网的代码:
HttpURLConnection conn = null;
URL url = new URL("http://10.0.0.172/");
conn = (HttpURLConnection) url.openConnection();
conn .setRequestMethod("POST");
conn .setDoInput(true);
conn .setDoOutput(true);
conn.setRequestProperty("X-Online-Host","www.xxxx.com");
conn.setConnectTimeout(30000); // 30秒超时
conn.connect();
如果返回的页面是一个302跳转,会自动跳转,但是如果跳转过去后还是一个302跳转,就卡在connect()这里了,超时之后一个 connection reset 的 exception. 不论Get还是Post方法,都一样问题。用setFollowRedirects关掉自动重定向,还是connection reset. 查了很长时间,还是弄不出个所以然来,看HttpURLConnection 的实现代码,redirect大于4次才会抛出一个Too many redirects 的异常,这才两个302就挂了...最后换用org.apache.http包里的东西,就没有问题。
DefaultHttpClient httpClient = new DefaultHttpClient();
HttpHost proxy = new HttpHost("10.0.0.172", 80);
httpClient.getParams().setParameter(ConnRouteParams.DEFAULT_PROXY,proxy);
HttpConnectionParams.setConnectionTimeout(httpClient.getParams(),20 * 1000);
HttpConnectionParams.setSoTimeout(httpClient.getParams(), 20 * 1000);
HttpGet httpget = new HttpGet(theurl);
HttpResponse response = httpClient.execute(httpget);
无论是自动跳转还是手动处理跳转都没有问题
- HttpURLConnection碰到连续302跳转的问题
- HttpURLConnection碰到连续302跳转的问题
- HttpURLConnection碰到连续302跳转的问题
- HttpURLConnection碰到连续302跳转的问题的原因及解决方法
- Activity 连续跳转问题
- 如何通过HttpURLConnection得到http 302的跳转地址
- 如何通过HttpURLConnection得到http 302的跳转地址
- 如何通过HttpURLConnection得到http 302的跳转地址
- 通过HttpURLConnection得到http 302的跳转地址
- 如何通过HttpURLConnection得到http 302的跳转地址
- 如何通过HttpURLConnection得到http 302的跳转地址
- 今天碰到的问题
- 在工作中碰到的问题
- 最近碰到的问题
- Dshow--碰到的问题
- eclipse碰到的问题
- osgi碰到的问题
- 每日碰到的问题
- PL/SQL跑在Oracle 64位数据库上初始化错误
- System.Timers.Timer
- 第十五周 项目1-工资数据的输入(文件输入,文件输出)
- UDP用打洞技术穿透NAT的原理与实现
- IOS开发(46)之设置 NSZombieEnabled 定位 EXC_BAD_ACCESS 错误
- HttpURLConnection碰到连续302跳转的问题
- 链接警告:warning LNK4070 :/OUT...
- 搭建集群必备:windows如何使用Xshell远程连接(SSH)Linux
- 我校学子在山东省ACM竞赛中获得优异成绩
- 关于ORACLE数据库之间创建DBLINK的问题
- Nhibernate 查询无主键表或视图时,查询结果不正确的问题
- 什么样的论坛才能算精品棋牌源码论坛
- 十五周 项目1.3 文本输入,输出工资
- 基于引用的元编程(Metaprogramming with Quotations)