姜晓林
姜晓林
  • 发布:2016-11-28 08:30
  • 更新:2019-02-27 13:53
  • 阅读:6717

mui ajax 一直报abort

分类:MUI
//ajax传送数据  
                    mui.ajax('http://localhost/Application/Home/reg.php',{  

                        data:{  
                            name:name.value,  
                            password:password.value  
                        },  
                        dataType:'json',//服务器返回json格式数据  
                        type:'post',//HTTP请求类型  
                        crossDomain:true,  
                        timeout:10000,//超时时间设置为10秒;  
                        //headers:{'Content-Type':'application/json'},                  
                        success:function(data){  
                            //服务器返回响应,根据响应结果,分析是否登录成功;  
                            plus.ui.toast(data.code)  
                            if(data.code == 200){  
                                plus.ui.toast(data.info);  
                                mui.openWindow({  
                                    url:'login.html',  
                                    id:'login'  
                                })  
                            }else{  
                                plus.uo.toast(data.info);  
                            }  
                        },  
                        error:function(xhr,type,errorThrown){  
                            //异常处理;  
                            console.log(type);  
                        }  
                    });  

接口我在地址栏测试没问题,无论是真机还是打包都会报abort错误,有没有大神帮忙解决一下

2016-11-28 08:30 负责人:无 分享
已邀请:
badfl

badfl - mui详细文档:http://ask.dcloud.net.cn/article/1039

这个去掉试试 crossDomain:true,
//headers:{'Content-Type':'application/json'}, 这个也去掉

如果还不好使 type:'post', 改成GET

Trust

Trust - 少说废话

地址不正确,localhost是本机地址。
保证手机与本地服务在同一个局域网,通过指明的IP地址进行访问。
如:http://192.168.0.1:8080/test.php

  • 姜晓林 (作者)

    是不是模拟器的话就在同一个网络内

    2016-11-28 12:20

  • 姜晓林 (作者)

    http://127.0.0.1:80/Application/Home/reg.php 这个地址在浏览器中可以访问 在在模拟器上就不行

    2016-11-28 12:22

  • Trust

    回复 姜晓林:127这个地址是本机地址,你需要填写服务所在的主机ip地址。

    2016-11-28 12:28

  • 姜晓林 (作者)

    我是用的wampsever开的本地服务

    2016-11-28 12:51

  • Trust

    回复 姜晓林:跟什么服务没关系,因为服务不在手机上。手机访问目标服务,需要填写正确的地址才可以。

    2016-11-28 12:53

  • 姜晓林 (作者)

    就是我把接口地址放在服务器上就行是吧

    2016-11-28 13:13

2***@qq.com

2***@qq.com - 90it

这个问题我解决了,不知道你是不是在登录界面发生,我开始也是套用了,mui的登录模板,这个是很隐蔽的坑,
登录模板中是这样的
<button id='login' class="mui-btn mui-btn-block mui-btn-primary">登录</button>

大家注意看没有,给这按钮绑定事件是发送不了post请求的,一直报abort(中止),关键点在于
form表单下的按钮在没有指定type类型的时候,如果我们同时给其添加了点击事件的话... 会默认button为tpye=“submit” ,登录模板没有说明这个问题.导致很多小伙伴都用了登录的模板,我的解决办法就是在button加上一个type="button"
<button id='login' type="button" class="mui-btn mui-btn-block mui-btn-primary">登录</button>

这样就可以正常发送post请求登录了,搞了我两天时间,这种坑太隐蔽了

距离您98米

距离您98米 - 哈哈

偶尔会报abort,中断访问的,不知道是不是mui.ajax的问题,经常出现abort

2***@qq.com

2***@qq.com

都没专家解决,草

  • 回梦無痕

    plus的api替换mui.ajax试试

    2019-02-27 15:18

该问题目前已经被锁定, 无法添加新回复