🚗 主题API
主题自Ver2.3.0版本开始支持接口(简单API)调用功能,开发者可以通过调用API来和emlog系统以及主题进行数据交互。详细接口说明请参看下文内容。
注意
该文档以最新版本的 Eternity主题Ver2.3.0 为基础编写,低版本不兼容,请先升级到最新版本,并在后台api设置页面开启api。
接口鉴权
(1)API秘钥鉴权:签名鉴权
-
请求方式:POST/GET
-
鉴权所需参数:
参数 是否必填 描述 req_sign 必填 接口签名,见下方计算签名规则 req_time 必填 Unix时间戳,php可使用time()函数获取,如:1651591816
计算签名规则
将 unix时间戳 和 API秘钥 拼接后进行md5加密,API秘钥,在后台系统-设置-API 设置页面可以找到
php代码示例:
$apikey = '******'; // API秘钥,在后台系统-设置-API 设置页面可以找到
$req_time = time(); // unix时间戳, 单位秒
$req_sign = md5($req_time . $apikey); // MD5签名
(2)API秘钥鉴权:免签名鉴权
使用简单,但是安全性不如签名鉴权,建议配合https使用
-
请求方式:POST/GET
-
鉴权所需参数:
参数 是否必填 描述 api_key 必填 API秘钥,在后台系统-设置-API 设置页面可以找到
(3)cookie鉴权
请求需要附带用户登录emlog系统后的登录状态cookie,用来识别当前登录状态及登录用户。
// emlog登录状态cookie形如:
EM_AUTHCOOKIE_XXXXX=admin%7C0%7C2a12e9a651b7e44be3d2d3536f51eaaa; Path=/; HttpOnly;
API列表
获取用户会员信息
- 接口URL:https://yourdomain/?ete_api=user_vip_data&user_id=UID&api_key=API_Key
- 请求方式:GET
- 接口鉴权方式:【API秘钥鉴权】
- 返回格式:JSON
请求参数
| 参数 | 是否必填 | 描述 |
|---|---|---|
| user_id | 是 | 用户UID |
| api_key | 是 | 后台系统-设置-API获取 |
返回结果
{
"code": 0,
"msg": "ok",
"data": {
"vip_data": {
"level": 0,
"expire": "expired"
}
}
}
| 返回值 | 说明 |
|---|---|
| level | 会员等级:0=未开会员或会员过期,1=一级会员,2=二级会员 |
| expire | 会员过期时间:1. Permanent=永久会员 2. 会员到期时间。格式:2023-01-01 23:59:59 3. expired=会员当前已过期 4. not_vip=从未开通会员 |
获取用户积分总数
- 接口URL:https://yourdomain/?ete_api=user_points_amount&user_id=UID&api_key=API_Key
- 请求方式:GET
- 接口鉴权方式:【API秘钥鉴权】
- 返回格式:JSON
请求参数
| 参数 | 是否必填 | 描述 |
|---|---|---|
| user_id | 是 | 用户UID |
| api_key | 是 | 后台系统-设置-API获取 |
返回结果
{
"code": 0,
"msg": "ok",
"data": {
"user_points": 0
}
}
| 返回值 | 说明 |
|---|---|
| user_points | 用户积分数量。大于等于0的整数 |