网络不稳定http失败,协议本身支持重发,重发机制可能导致用户操作重复提交情况,http请求如果是数据插入操作,可能造成服务端数据重复
这种重复很多时候服务端是难以控制的,在两次请求插入同时到来,两次验证条件相同,很难过滤一个操作的“第二次请求”,增加缓存机制记录http操作对性能和成本有一定的负担,如果app是内部系统一部分,可以简单的在app端设置http失败不重发
操作:
DefaultHttpClient
defaultHttpClient.setHttpRequestRetryHandler(new DefaultHttpRequestRetryHandler(0, false));
HttpURLConnection 1.5后默认不重发
 
OKHttp 
public void setRetryOnConnectionFailure(boolean retryOnConnectionFailure)