扫一扫浏览

api模块完善接口案例代码

精帖 未结贴
1 2570
鸿老大未认证 2018-03-14 14:09:38
收藏

鉴于一些人不知道怎么开始写api操作,现完善一个接口案例在里面,以供参考

在写api接口案例前,我再说明一下各层的功能

controller:数据转发与回应操作(返回数据)

service:数据验证、过滤、后期处理等操作,调用logic层完成数据CURD操作,如果有事务可在此层加事务

logic:数据处理层,对数据进行curd操作

validate:数据验证层

model:数据自动完成,修改器功能(实际的curd操作层,因为logic也是继承的model层)

view:显示页面(api用不到)

执行示例图片:

为了让逻辑能在不同端同用(api、pc、mobile),很多数据可以返回给service层进行后期处理,视情况而定

下面我就以普通的api接口说明文档来写一个简单的api接口

注意:下面的仅仅是案例,请根据你自己的实际情况进行规范或说明来写接口

一、接口规范

1)、请求方式:post

2)、必须传递的参数token、app_version(默认1.0.0)、api_version(默认1.0)

3)、统一请求入口:https://api.tpframe.com

4)、统一编码:utf-8

......

二、返回值说明:

{
	code:40040,
    msg:"消息",
    data:null
}

code:返回码,为0表示成功,其它都表示失败

msg:返回值说明,看返回值

data:返回的数据列表,看返回值

三、写接口,以用户登录为例

基础参数(每个接口都要传):

参数名 参数说明 是否必须
token 客户端唯一标识
app_version app版本
api_version api版本

参数说明:

参数名 参数说明 是否必须
username 用户名
password 密码(md5)

请求地址:域名/user/login

返回值说明:

{
	code:40040,
    msg:"用户名不能为空",
    data:null
}

返回值根据实际返回数据更行后续处理

案例代码已经git上,git地址:https://gitee.com/37duman/tpframe

有什么问题,留言跟进....

  • Anni Anni 61
    2018-04-09 16:58:39

    哈哈,新系统用上了,感谢~

    回复
最近热帖 HOT TOPIC
父元素flex之后,子元素高度自适应问题 4295
thinkphp5隐藏默认模块的一些问题 3653
关于thinkphp5.0.x getshell漏洞的说明 3385
一张纸的厚度是0.01毫米,则该纸对折30次后是多厚(据说超过珠穆朗玛峰的高度)php实现 3312
教你如果处理高并发数据不同步的问题php篇 3127
tpframe新建主题 3093
移动web资源整理,你值得收藏的干货 2985
PHP如何判断字符串是否为json格式 2985
【全套视频】thinkphp5视频教程 2980
omnicore rpc api中文手册【usdt】 2918
月度热议HOT COMMENTS
tpframe 后续版本你希望有的功能是什么(分享贴) 12
关于tpframe的一点话题 6
cms插件在分类排序的时候JSON错误 6
基于tpframe v3.x 的微信公众号插件已批量上线 5
tpframe插件tcms插件v2.2已发布上线,欢迎下载使用 5
新增的管理员没有权限操作CMS模块。 3
api接口文档插件easydoc的基本用法,快速搞定接口文档 3
thinkphp5自动完成操作,两次运行的详解 2
thinkphp5隐藏默认模块的一些问题 2
tpframe-curd操作之添加数据 2