多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
# 注意:本文档后期不在跟新,新文档迁移到:[http://www.openkit.cc/docs/kitadmin/#/](http://www.openkit.cc/docs/kitadmin/#/) #### 首先感谢使用KitAdmin后台开发框架 #### 反馈交流QQ群:696279396 ## 请求规范 ### 请求方式 - 数据接口通过 HTTP 的方式请求 ### 返回方式 - 数据接口返回的数据格式统一使用json格式如: ```json "header":{     "OpenKit-Appid":"{{you_app_id}}",     "OpenKit-Appkey":"{{加密后的key}}",     "Header-Time":"{{请求的时间}}" } ``` ### 接口编码 - 所有提交及返回参数使用UTF-8编码,服务端做UTF-8的URL解码 ## 访问验证 > 通用接口请求头校验规则,服务器需对请求Header进行如下校验(适用于无需校验用户身份的接口) ### Header 验证 |字段名 |数据类型| 字段说明| 备注| |:--:|:--:|:--:|:--:| |reqKey(MD5加密:32位大写)| String |访问口令 |加密参数,加密计算方法见备注| |reqDate| String| 时间戳 |--| > 备注:reqKey 计算方式 ```js var reqDate = Date.now(); var reqKey = sha1(appId +"openkit"+appkey+"openkit"+ reqDate); // 其中AppID与AppKey可在apicloud控制台获得 ``` 例子:var reqKey = sha1("A6918262863736"+"openkit"+" CD4C3537-8E7B-4D62-6837-B700CE2C41B5"+" openkit"+now); ### 返回状态 |状态码 |说明| |:--:|:--:| |4001 |无访问权限| --- > 需要校验用户身份的接口校验规则,需要在上面通用校验的基础上,再次对请求Header进行如下校验 ### Header 验证 |字段名| 数据类型| 字段说明| 备注| |:--:|:--:|:--:|:--:| |reqToken (MD5加密:32位大写)| String| 登录口令| 加密参数,原始值及加密计算方式见备注| |uid |String |用户编号| 用户在平台中唯一标识| |reqDate| String| 时间戳 |--| ### 返回状态 |状态码|说明| |:--:|:--:| |4001| 用户权限验证失败| |4002| 用户权限不足| > 备注:Token 计算方式 ```js var reqDate = Date.now(); var reqToken = sha1(uid +" openkit"+token+"openkit"+ reqDate); ``` > 注:这里传的reqKey为加密后的,当用户第一次登录是,后台返回token,移动端需要加密后再次传送。 ### APP测试绕过校验 为了放变测试,如果你在测试的时候想绕过校验,那么你只要在传参数的时候,`reqKey = "openkitadmin"` 或这 `reqToken="openkitadmin"` 即可 那么在项目上线的时候需要删除`AppUtil.java` 文件下的 `isApp` 和 `isAppAndLogin` 方法中的下面的代码 ``` // isApp 中上线需要删除的代码 if("openkitadmin".equals(reqKey)){ return true; } // isAppAndLogin 中上线需要删除的代码 if("openkitadmin".equals(reqKey)){ return true; } ``` ### 接口里边验证APP 接口连验证APP只要在方法前面添加下面的三行代码即可 ```java // 如果是游客类的需要验证APP if(!AppUtil.isApp(request)){ return JSONObject.toJSON(KitUtil.returnMap("4001", StaticFinalVar.APP_ERR)); } // 如果需要登录后的接口验证APP if(!AppUtil.isAppAndLogin(isAppAndLogin)){ return JSONObject.toJSON(KitUtil.returnMap("4001", StaticFinalVar.APP_ERR)); } ``` #### 反馈交流QQ群:696279396 #### 赞助 ![](https://box.kancloud.cn/e49c441e59a5c0981c0de2e9bb0871fd_600x500.png)