This time I will bring you apicloud to implement AJAX requests (with code). What are the precautions for apicloud to implement AJAX requests? Here are practical cases, let’s take a look.
get request code:
api.ajax({ url:'http://m.weather.com.cn/data/101010100.html' //天气预报网站的WebService接口 },function(ret,err){ if (ret) { api.alert({msg:JSON.stringify(ret)}); } else { api.alert({msg:JSON.stringify(err)}); }; });
POST request-Form form submission:
api.ajax({ url: 'http://www.xxx.com/path/form', method: 'post', dataType: 'text', //该参数若不传,则默认为json data: { values:{name: 'devlp', password: '123456'} //键值对 } },function(ret,err){ if (ret) { api.alert({msg:JSON.stringify(ret)}); } else { api.alert({msg:JSON.stringify(err)}); }; });
POST request-single/multiple files, file group upload:
api.ajax({ url: 'http://www.xxx.com/path/upLoad', method: 'post', data: { files:{myfile: 'filepath'} // filepath来自ios或者Android的文件系统中的任意文件。可设置多个文件,甚至是文件数组,如files:{myfile: 'filepath', myfile1: 'filepath1'}或者files:{'myfile[]': ['filepath', 'filepath1']}等 } },function(ret,err){ if (ret) { api.alert({msg:JSON.stringify(ret)}); } else { api.alert({msg:JSON.stringify(err)}); }; });
POST request - submit binary stream:
api.ajax({ url: 'http://www.xxx.com/path/body', method: 'post', data: { body:'textbits' } },function(ret,err){ if (ret) { api.alert({msg:JSON.stringify(ret)}); } else { api.alert({msg:JSON.stringify(err)}); }; });
POST request - submit file stream:
api.ajax({ url: 'http://www.xxx.com/path/body', method: 'post', data: { stream:'filepath' // filepath来自ios或者Android的文件系统中的任意文件 } },function(ret,err){ if (ret) { api.alert({msg:JSON.stringify(ret)}); } else { api.alert({msg:JSON.stringify(err)}); }; });
POST Request-Multipart-Data, file and text fields submitted together:
api.ajax({ url: 'http://www.xxx.com/path/multipart', method: 'post', data: { values:{name: 'devlp', password: '123456'}, files:{file: 'fs://test.png'} } },function(ret,err){ if (ret) { api.alert({msg:JSON.stringify(ret)}); } else { api.alert({msg:JSON.stringify(err)}); }; });
POST Request-Display Upload progress:
api.ajax({ url: 'http://www.xxx.com/path/multipart', method: 'post', report: true, data: { values:{name: 'devlp', password: '123456'}, files:{file: 'fs://test.png'} } },function(ret,err){ if(ret){ if(0 == ret.status){ //loading('进度:' + ret.progress); }else{ api.alert({msg:'上传成功:\n' + JSON.stringify(ret)}); } }else{ api.alert({msg:JSON.stringify(err)}); } });
[End API uses api.ajax to read interface data]
<!DOCTYPE HTML> <html> <head> <meta charset="utf-8"> <meta name="viewport" content="maximum-scale=1.0,minimum-scale=1.0,user-scalable=0,width=device-width,initial-scale=1.0"/> <title>test</title> </head> <body> <button onclick="showPersonInfo()">点我获取数据</button> </body> <script type="text/javascript" src="../script/api.js"></script> <script> function showPersonInfo(){ api.showProgress();//显示加载进度框 //使用api.ajax请求数据,具体使用方法和参数请看官方文档,这里使用get方法演示 api.ajax({ url:'http://192.168.0.10/get.php',//如果地址访问不到会请求出错,请填写自己的接口地址 method:'get', cache:'false', timeout:30, dataTpye:'json', },function(ret,err){ api.hideProgress();//隐藏加载进度框 if(ret){ for(var i=0;i<ret.length;i++){ var html='<br>'+'ID:'+ret[i].id+'<br>'+'姓名:'+ret[i].name+'<br>'+'性别:'+ret[i].sex+'<br>'+'年龄'+ret[i].age; document.write(html); } }else{ api.alert({msg:('错误码:'+err.code+';错误信息:'+err.msg+'网络状态码:'+err.statusCode)}); } }); } </script> </html>
I believe I saw it You have mastered the method in the case of this article. For more exciting information, please pay attention to other related articles on the php Chinese website!
Recommended reading:
How to implement WebApi Ajax cross-domain request using CORS
ajax file asynchronous implementation of form upload
The above is the detailed content of apicloud implements AJAX requests (with code). For more information, please follow other related articles on the PHP Chinese website!