[APP开发技巧] 【分享】JS通过Ajax调用数据云API的REST接口的方法
2017-10-19 09:24
816 查看
假设我们的问题是:1、要查询叫XXX_class的类,该类有名为xxx的pointer型字段指向另外一个class;
2、查询条件是yyy字段的值等于paraVal;
3、查询结果按createdAt倒序排列(最常用的形式);
4、数据分页要求:每页limit条,当前第page页
用JS通过Ajax调用数据云API的REST接口获取数据的方法如下(已包含必要的解释):
var appId = 'X0000000000000';
var appKey = 'XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX';
var host = 'https://d.apicloud.com';
var now = Date.now();
var AppKey = hex_sha1(appId + "UZ" + appKey + "UZ" + now) + "." + now; //调用hex_sha1函数要先包含附件的sha1.js文件
var appPath = '/mcm/api/XXX_class'; //XXX_class是你要查询的类
var getParam = '?filter[order]=createdAt DESC'; //此处不必用%20替换空格,正序则用ASC
getParam += '&filter[where][yyy]=' + paraVal; //查询条件
getParam += '&filter[limit]=' + limit;
getParam += '&filter[skip]=' + page*limit; //limit和skip一起定义数据分页
getParam += '&filter[include]=xxxPointer'; //xxx为pointer字段,则包含时要用xxxPointer,查询结果中名称仍然是xxx,这里要注意
api.ajax({
url: host + appPath + getParam,
method: 'get',
cache: false,
timeout: 20,
dataType: 'json',
returnAll:false,
headers:{
"X-APICloud-AppId": appId,
"X-APICloud-AppKey": AppKey
} //通过头信息进行认证
},function(ret,err){
if (ret) {
api.alert({msg: JSON.stringify(ret)});
}else {
var err_msg = '错误码:'+err.code+';错误信息:'+err.msg+'网络状态码:'+err.statusCode;
api.toast({msg: err_msg, location: 'middle'});
};
});
复制代码
转自http://community.apicloud.com/bbs/forum.php?mod=viewthread&tid=1296
2、查询条件是yyy字段的值等于paraVal;
3、查询结果按createdAt倒序排列(最常用的形式);
4、数据分页要求:每页limit条,当前第page页
用JS通过Ajax调用数据云API的REST接口获取数据的方法如下(已包含必要的解释):
var appId = 'X0000000000000';
var appKey = 'XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX';
var host = 'https://d.apicloud.com';
var now = Date.now();
var AppKey = hex_sha1(appId + "UZ" + appKey + "UZ" + now) + "." + now; //调用hex_sha1函数要先包含附件的sha1.js文件
var appPath = '/mcm/api/XXX_class'; //XXX_class是你要查询的类
var getParam = '?filter[order]=createdAt DESC'; //此处不必用%20替换空格,正序则用ASC
getParam += '&filter[where][yyy]=' + paraVal; //查询条件
getParam += '&filter[limit]=' + limit;
getParam += '&filter[skip]=' + page*limit; //limit和skip一起定义数据分页
getParam += '&filter[include]=xxxPointer'; //xxx为pointer字段,则包含时要用xxxPointer,查询结果中名称仍然是xxx,这里要注意
api.ajax({
url: host + appPath + getParam,
method: 'get',
cache: false,
timeout: 20,
dataType: 'json',
returnAll:false,
headers:{
"X-APICloud-AppId": appId,
"X-APICloud-AppKey": AppKey
} //通过头信息进行认证
},function(ret,err){
if (ret) {
api.alert({msg: JSON.stringify(ret)});
}else {
var err_msg = '错误码:'+err.code+';错误信息:'+err.msg+'网络状态码:'+err.statusCode;
api.toast({msg: err_msg, location: 'middle'});
};
});
复制代码
转自http://community.apicloud.com/bbs/forum.php?mod=viewthread&tid=1296
相关文章推荐
- (js方法)通过给的api接口用ajax获取到接口数据
- Js中通过Ajax调用代理的方法
- 手把手教你搭建智能合约测试环境、开发、编译、部署以及如何通过JS调用合约方法
- 【转】分享前端开发中通过js设置/获取cookie的一组方法
- 微信公众号开发 从前台到Java后台 调用微信JS接口分享朋友圈
- 分享前端开发中通过js设置cookie的一组方法
- 通过Xfire开发web service接口和客户端调用web service接口接口方法
- 利用sender的Parent获取GridView中的当前行 不用AJAX实现前台JS调用后台C#方法(小技巧) AjaxControlToolkit的CalendarExtender的本地化
- 通过a4j:jsFunction 调用原生的javascript方法,并且共享和传递后台bean里面的变量
- 不用AJAX实现前台JS调用后台C#方法
- 不用AJAX实现前台JS调用后台C#方法(小技巧)-转
- 通过.NET Remoting调用CCNET接口的方法
- 调用prototype.js的ajax进行post提交方法
- adf开发中怎么用js调用的服务端的java方法
- 客户端通过Ajax调用后台方法返回DataSet,Ilist,ilist,T,对象
- js技巧--创建class时调用prototype原型方法
- 不用AJAX实现前台JS调用后台C#方法(小技巧)
- 不用AJAX实现前台JS调用后台C#方法(小技巧) 【改自Web.网际浪人.Blog】
- 转:不用AJAX实现前台JS调用后台C#方法(小技巧)
- Ajax 的 asp.net CS调用JS方法,嘿嘿,自己用