java.net.HttpURLConnection 踩坑经历

java.net.HttpURLConnection

这个是java自带的网络库,接手项目后遇到了两个问题:

1.自动静默的重试
2.默认进行3XX跳转

自动静默的重试

这个查阅了一些资料发现,是java类库自带的bug,不过在2006设计者已经出了解决方案,只不过由于要兼容以前版本,并没有修改 java.net.HttpURLConnection 这个库的内部实现,只是增加了一个开关,可以人为选择关闭。

//服务端关闭方式
System.setProperty("sun.net.http.retryPost", "false");
// Android 无法这样设置只能使用
httpConn.setChunkedStreamingMode(0);

默认进行3XX跳转

虽然现在基本不在乎跳不跳转,但是还是有用户是不希望进行跳转的,自我接手 SDK 以来还是出现了自动跳转给客户带来了问题,所以研究了下 java 的网络类库(以前根本没有用过,都是做一些web项目,网络库应用的太少)

// 关闭方式
httpConn.setInstanceFollowRedirects(false);
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章