ios android ajax请求,api.ajax网络请求在安卓上没问题,但在IOS上部分出现问题(报.......

此篇博客讨论了一个JavaScript接口如何实现异步请求,并询问了API同步请求的可能性。作者通过代码展示了使用zwwl.postAjax进行POST请求的过程,同时关注了错误处理和进度显示。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本帖最后由 天空是空 于 2017-5-17 09:21 编辑

直接上代码(这只是其中的一个接口,还有几个有同样的问题):顺便问一下API可以实现同步请求吗?

function firstGetData(){

api.showProgress({

title: '正在加载...',

modal: true

});

var url = PUBLIC_ZWWL_PATH + PROJECT_PATH + 'getLiveappDeviceMappings';

var uri = PROJECT_PATH + 'getLiveappDeviceMappings';

var requestBodyJson = {

"liveappId":scene_Id,

"offset":"0"

};

var requestBody = JSON.stringify(requestBodyJson);

var headersBodyParam = zwwl.getHeadersBodyParam($api.getStorage('ZWWL_TOKENID'),uri,requestBody,$api.getStorage('ZWWL_TENANTKEY'));

console.log(requestBody);

console.log(JSON.stringify(headersBodyParam));

zwwl.postAjax(url,headersBodyParam,requestBodyJson,function(ret) {

//          api.hideProgress();

if(ret){

api.hideProgress();

list = ret.data.dataList;

console.log(list.length);

//显示视图

showUIListView(list);

if(list.length == 0){

console.log(list);

document.getElementById('data-list').style.display = "block";

return;

}

console.log(ret.data.offset);

if(ret.data.offset != -1){

$api.setStorage('OFFSET_CJSB',ret.data.offset);

}else{

$api.setStorage('OFFSET_CJSB','-1');

}

}

});

}

zwwl.postAjax = function(url,headersBodyParam,params,callback){

//        console.log(JSON.stringify(url));

//        console.log(JSON.stringify(headersBodyParam));

//        console.log(params);

api.ajax({

url : url,

method : 'post',

dataType : 'json',

headers : headersBodyParam,

data : {

body: params

}

},function(ret,err){

// 返回数据正常(系统错误或者网络问题)

// 关闭进度条

api.hideProgress();

//          console.log(JSON.stringify(ret));

//          console.log(JSON.stringify(err));

if(ret) {

if(ret.code == 1001){//平台内部错误

api.toast({

msg: '签名失败',

location: 'middle'

});

return;

}

if(ret.code == 1002){//平台内部错误

api.toast({

msg: 'token过期',

location: 'middle'

});

return;

}

if(ret.code == 1003){//平台内部错误

api.toast({

msg: 'API path 错误',

location: 'middle'

});

return;

}

if(ret.code == 1004){//平台内部错误

api.toast({

msg: '拒绝请求',

location: 'middle'

});

return;

}

if(ret.code == 1005){//平台内部错误

api.toast({

msg: '无效参数',

location: 'middle'

});

return;

}

if(ret.code == 1006){//平台内部错误

api.toast({

msg: '内部出错',

location: 'middle'

});

return;

}

if(ret.code == 1008){//平台内部错误

api.toast({

msg: '非法请求',

location: 'middle'

});

return;

}

//                  if(ret.code == 2){//未登录

//                          zwwl.autoLogin(level);

//                                return;

//                  }

if(ret.code == 0){

callback(ret);

}

} else {

// 提示错误消息

api.toast({

msg: err.msg,

location: 'middle'

});

// 异常处理,前端判断是否有值

callback();

}

});

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值