时间:2021-9-13 作者:admin 分类: api接口文档
本API建议在服务器上以Http方式请求,暂时没有tcp请求,如有需要可以增加
为了增加安全性,所有请求 /v1/worth/ 路径下的操作,必须在redis服务器(目前我们只有一个redis)上设置一个时间戳,如下(以下代码都是基于 PHP 语法):
Redis->setEx('validate_check_auth_'.$app_id,60,time());
$app_id为请求时的header里的 md5(substr('x-app-id',0,10)) 的值。
60 为 60秒后删除这个key,为了不让redis服务器长期储存这个脏数据
time()为PHP的一个函数,用来获取系统的当前时间戳,13位,整型
此操作应该在请求某个api之前设置,用户中心收到请求后,会先验证;
如下:
$time = Redis->get('validate_check_auth_'.$app_id)
if(time() - $time > 3){
// 如果当前时间减去发出请求时的时间大于3秒就会报异常
throw new Exception('xxx error!',code) //错误码对照表:http://www.zoodt.cn/post-5.html
}
要求参数:memory :string 必须是数字且是整型,否则报异常
返回:json字符串
{
code:0,
result:{memory:10} //用户当前的金额
msg:操作成功
}
要求参数:memory : string 必须是数字且是整型,否则报异常
返回:同上
注意:在减操作之前,必须保证减操作之后余数大于0,否则报异常
要求参数:jifen : string 必须是数字且整型,否则报异常
返回:json字符串
{
code:0,
resuolt:{ jifen: 10 } //用户当前的积分
msg:操作成功
}
要求参数:同上
返回:同上
注意:在减操作之前,必须保证减操作之后余数大于0,否则报异常
要求参数:无
返回:json字符串
{
code:0,
resutl: {
user_id:int 用户唯一id,
worth:int 用户当前的RMB余额
jifen:int 用户当前的积分余额
app_id: string 用户属于哪个应用(也就是说是从哪个应用注册的)
}
}