站内API
JavaScritp SDK 文档
对于POST
跨域的问题,使用iframeAjax
进行了处理封装。
该模块依赖于seedit-config
屏蔽了不同环境下的url差异。
var API = require('seedit-api');
GET
请求统一为jsonp
请求
POST
请求将提交到iframe
处理
API
主要只有4
个请求方法。默认请求的是common
API。要请求其他域的请看后面说明。
verb为REST
基本的四个方法:
get
post
del
(delete为JavaScript关键字
,ie
下报错,不能使用)put
参数说明
-
API string API名字,参照
CMS
后台文档。如bbs/common_member
。也可以为完全的API路径。 -
data object API参数,
可选
-
successCallback function 请求成功时的回调,
参数为API返回数据
Object
:{error_code:0,data:{}}
-
errorCallback function 请求失败的回调,
参数为API返回数据
Object
:{error_code:1006,error_message:'出错啦'}
请求的回调还可以写成事件的形式:
success
成功error
失败
原来代码:
API.verb(API,[data],successCallback,errorCallback)
可以写成
API.verb(API,[data]).on('success',successCallback).on('error',errorCallback);
注意:交互考虑,必须必须有errorCallback回调
该函数返回上面四个方法,用于定义API scope,即API域 。
后面再调用get等方法时,基地址将由scope决定。
scope可取值有:
-
common
common API -
huodong
活动 API -
bbs
bbs API对于
http://bbs.office.bzdev.net/restful/newyear/post.json
这样的接口,可以用var bbsAPI = APICore.scope('bbs'); bbsAPI.get('newyear/post').on('success',function(data){ // });
-
./path
相对当前网站路径,当前url为
http://account.seedit.com/
时,使用API.scope('./restful')
,那么所有API的基地址是http://account.seedit.com/restful
-
绝对地址
不建议使用,仅用于调试
var huodongAPI = API.scope('huodong');
// 请求试纸数据
huodongAPI.get('shizhi/list',function(data){
// 请求成功啦
});
带参数请求:
API.post('bbs/post',datas,function(data){
console.log('success');
},function(data){
console.log('oops!'+data.error_message);
})
无参数时:
API.get('bbs/common_member',function(data){
console.log('success');
},function(data){
console.log('oops!'+data.error_message);
});