zoukankan      html  css  js  c++  java
  • Android或者Java发送Http自动重发请求的解决方案

    今天遇到奇葩问题,描述如下:

    客户端向服务端发起了一次(从日志中可以看出仅仅打印了一次日志),但是确在后端出现了重复的几次请求数据在后端。这个问题很不容易出现,而且用中文搜索不到相应的结果;

    今天在国外的网站中找到了问题的解决方案:

    原因如下:由于设置了链接与获取数据的超时时间,客户端在发送数据之后,检测到可能并没有发送成功到后端,这个时候http底层会自动重发请求(注意是Http底层,所以应用端不会知道发送了多次请求)。如果应用端自动重发了多次请求,后端也回复了多次请求,但是前段仅仅会只回复1次请求。所以为了解决这个问题,只要在DefaultHttpClient设置如下代码即可解决:

    defaultHttpClient.setHttpRequestRetryHandler(new DefaultHttpRequestRetryHandler(0, false));

     

  • 相关阅读:
    1.表单标签
    07.Ajax.post
    06.Ajax.get
    05.Ajax.get
    04.Ajax-get.html
    03.post.file
    nodejs-7.2. CURD数据管理系统小栗子
    nodejs-7.1. mongoose模块
    JS 无缝轮播图1-节点操作
    JS 放大镜特效
  • 原文地址:https://www.cnblogs.com/zhengtu2015/p/5996223.html
Copyright © 2011-2022 走看看