求助微信一次ajax请求,会访问两次

weiwangin 2015-08-26 02:16:12
纯JS ,在电脑上正常,在微信上会请求两次,导致显示不正确的信息

<script>
var url = "{:U('start',array('id'=>$hisid))}"
var oAjax = null;
if(window.XMLHttpRequest){
oAjax = new XMLHttpRequest();
}else{
oAjax = new ActiveXObject('Microsoft.XMLHTTP');
}
oAjax.open('GET', url, true);
oAjax.send();

oAjax.onreadystatechange=function(){
if(oAjax.readyState==4){
if(oAjax.status==200){
var info = eval(oAjax.responseText);

if(info[0])
window.location.href= "{:U('Info/ok')}/info/"+info[1]+"/info2/"+info[2];
else
window.location.href= "{:U('Info/error')}/info/"+info[1]+"/info2/"+info[2];

}else{
if(fnFaild){
fnFaild();
}
}
}
};
</script>
...全文
13740 34 打赏 收藏 举报
写回复
34 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
吴维炜 2019-08-26
发现这个是微信浏览器的问题,刚好也遇到了,目前是自己在nodejs后台加逻辑判断
  • 打赏
  • 举报
回复
williamxia8 2018-09-20
这个狗血问题,微信的开发人员不知道吗?怎么也不赶快解决这个问题
  • 打赏
  • 举报
回复
da_fish 2018-08-06
引用 11 楼 u010292385 的回复:
试了一下 确实是走了两次一样的url 微信浏览器的原因吧 好多碰到这种问题的都是自己在前后台加限制来解决的 ,没有找到具体的原因


请问具体是怎么限制?
  • 打赏
  • 举报
回复
我记得微信如果超过多长时间没响应会自动进行2次和跟多次的调用 不太确定提供参考
  • 打赏
  • 举报
回复
夜间独行 2017-11-23
昨天也遇到了这样的问题,花了两个小时确认问题,有以下策略: 1.需要防止重复操作的步骤改成ajax,注意header头设置 2.需要防重复的操作在生成二维码之前处理(静态二维码的业务不能用这个)
  • 打赏
  • 举报
回复
guanjiacsdn 2017-08-30
老哥,目前面临这个问题,有木有什么好的的办法解决这个问题。
  • 打赏
  • 举报
回复
pgz_lq 2017-08-10
把端口号去掉试试呢
  • 打赏
  • 举报
回复
csdn_WHS 2017-03-27
引用 28 楼 hahaha1w 的回复:
你们谁有我惨,我是微信发红包。。。oauth2授权回调我的returnUrl时候连续请求两次,就麻痹连着发两次。。。。
问题解决了吗?
  • 打赏
  • 举报
回复
hahaha1w 2017-03-20
你们谁有我惨,我是微信发红包。。。oauth2授权回调我的returnUrl时候连续请求两次,就麻痹连着发两次。。。。
  • 打赏
  • 举报
回复
Lwjobs 2017-02-15
我也遇到这种问题,一个ajax先返回302,再返回200,但把最重要的openid丢失了,有没有人遇到这种问题
  • 打赏
  • 举报
回复
文刀木由 2017-02-10
我也是这种情况,到底怎么解决呢
  • 打赏
  • 举报
回复
plg17 2017-01-19
我也遇到这样的问题,微商城提交订单,超过10秒钟,微信浏览器重发,导致订单重复提交的问题。拦截器里看到确实有两次提交,确定我们代码里不做超时重试,然后这种情况似乎跟手机有关,我的手机就没有出现这样的问题,其他两个同事的手机就出现,巨坑
  • 打赏
  • 举报
回复
duojun_001 2017-01-13
断定的依据是什么,朋友?
  • 打赏
  • 举报
回复
LittleLeeZi 2017-01-11
确是是微信浏览器的问题
  • 打赏
  • 举报
回复
qq_17040557 2017-01-03
请求的时候用域名就不会出现这个问题了
  • 打赏
  • 举报
回复
songchunbo 2016-11-23
我特么也遇见了。。。springmvc,请求第二次就报错了,第二次请求时候对象就是空了,报错。然后我测试,用了一个普通的web工程,就servlet,结果发现,不只两次,有时候3次,有时候4次,还有一次是5次,不知道是不是我输错了。。求完美的解决。。。
  • 打赏
  • 举报
回复
vessl 2016-10-19
https://blog.fishlee.net/2016/07/07/double-request-from-wechat-client-with-ajax/ 有点长 慢慢看
  • 打赏
  • 举报
回复
qiangchen1990 2016-09-05
楼主有决解方法吗?
  • 打赏
  • 举报
回复
doudoustrongly 2016-08-31
请问这问题有解决吗,我也遇到了’
  • 打赏
  • 举报
回复
wangrw21 2016-08-23
微信浏览器真他M的坑, 一个ajax请求,发两次。
  • 打赏
  • 举报
回复
加载更多回复(14)
相关推荐
发帖
Ajax

5.2w+

社区成员

Web 开发 Ajax
社区管理员
  • Ajax
加入社区
帖子事件
创建了帖子
2015-08-26 02:16
社区公告
暂无公告