平台接口文档v.0.2
通过一段时间的开发和研究,二手交易平台的模块已经有初步架构的造成,原有不合理的内容进行了修改和调整
架构的说明以下:
架构:
Onethink为应用层框架,ThinkPHP为底层PHP框架,数据库采用Mysql,部分数据采用SAE的KVDB分布式KEY-VALUE数据库存储,Memcached主要用来保存用户的登录状态,由于比较费豆子,因此缓存的使用还须要考虑
1、登录注册模块
注册:接口与登陆相似,前期能够采用网站前台注册的方法
登录:考虑到对服务器性能的考虑和客户端发起请求的便利性,对于APP端的登录模块,单独开发了专用APP的用户接口
服务端Memcache键值对保存加密的密钥,加密步骤为sort -> 编码 -> sha1的步骤(仿照原有的方式), 键名为 username_user_auth_sign
APP端采用Cookie的模式,存储一段包含用户名,uid,登陆时间,登录IP的缓存,APP端无须解析
登录接口的框架与onethink底层的Member模型完成对接,接口以下所叙述:
1.登录接口
参数:username,password
请求类型:post
返回格式
{"ret_code":"2","message":"Success"}
部分ret_code返回码说明:
请求成功:返回码ret_code为正,即用户的uid
请求失败:
-1:系统级别禁用,好比说用户不存在之类的
-2:密码错误
-3:管理员操做的用户禁止
其余负数:调试阶段的错误代码
2.登出接口
参数:无
请求类型:POST
返回格式:
{"ret_code":-2}
ret_code返回码说明:
请求成功:正数为用户的uid
请求失败:
-1:删除Memcache失败
-2:已经处于未登陆的状态
3.用于检测Cookie的接口
参数:无
请求类型:POST
返回示例:
成功:
{"ret_code":0,"message":"You can get the data"}
失败:
{"ret_code":-1,"message":"Login First"}