详细问题描述
苹果手机真机调试使用mui.ajax无法发送同步请求
重现步骤
[步骤]
1、解压附件hello mui.rar,真机调试hello mui
2、选择ajax(网络请求),直接点击发送请求,发起ajax请求
3、代码中对默认代码进行稍微调整,并且加了async: false,希望mui.ajax发起同步请求
[结果]
苹果手机调试:
见附件《苹果手机调试结果(bug).png》,是异步请求
安卓手机调试:
见附件《安卓手机调试结果.png》,此为正确结果,是同步请求
[期望]
安卓手机调试结果为期望结果
IDE运行环境说明
HBuilderX
[IDE版本号]
2.3.7.20191024
[windows版本号]
window 10 家庭版
App运行环境说明
[iOS版本号]
11.4
[手机型号]
Iphone 6s
[可重现代码片段]
var ajax = function() {
//利用RunJS的Echo Ajax功能测试
var url = 'https://service.dcloud.net.cn/ajax/echo/';
//请求方式,默认为Get;
var type = methodEl.value;
//预期服务器范围的数据类型
var dataType = dataTypeEl.value;
//发送数据
var data = {
name: "mui",
version: "pre-release",
author: "chb",
description: "最接近原生APP体验的高性能前端框架"
};
//url = url + (dataType === 'html' ? 'text' : dataType);
url = url + 'json'
console.log(url)
respnoseEl.innerHTML = '正在请求中...';
//bug 测试开始
console.log('begin')
mui.ajax(url, {
data: data,
async: false,
dataType: 'json',
type: 'post',
headers: {
'Content-Type': 'application/json'
},
success: function(data) {
console.log('success')
respnoseEl.innerHTML = JSON.stringify(data);
},
error: function(xhr, type, errorThrown) {
console.log('readyState:'+xhr.readyState);
console.log('responseXML:'+xhr.responseXML);
console.log('type:'+type)
console.log('errorThrown:'+errorThrown);
}
});
console.log('end')
//bug 测试结束
};
联系方式
18682174026
[QQ]
775915361
木木月半 (作者)
感谢您的回复,之前考虑过这个地方引起的,但是因为有别的报错影响了我的判断,没想到真的改完就可以了;
再次感谢!
2019-10-28 22:54