📖 接口概述
本文档描述 鑫宜家 开放平台的对外接口,供微信小程序、移动 App 及第三方系统对接使用。
基础信息
| 接口根地址 | https://api.xin1jia.com |
| 数据格式 | 请求 / 响应均为 application/json |
| 字符编码 | UTF-8 |
| 响应结构 | { code: 0, msg: "ok", data: {...} },code = 0 表示成功 |
🔐 鉴权方式
除公开接口外,其余接口需在请求头携带 Authorization: Bearer {token}。
Token 生成规则
Token 为自实现轻量签名令牌,结构:
base64(member_id + "|" + timestamp + "|" + sign)
sign = HMAC-SHA256(member_id + "|" + timestamp, app.key)
| 字段 | 说明 |
member_id | 会员 ID |
timestamp | 签发时间戳 |
sign | HMAC-SHA256 签名 |
app.key | 配置文件 config/app.php 中的 key |
Token 有效期 7200 秒,过期后调用「刷新 Token」接口续签。
⚠️ 错误码
| code | 含义 |
0 | 成功 |
400 | 参数错误 |
401 | 未登录 / Token 无效或过期 |
403 | 账号异常 |
404 | 资源不存在 |
409 | 资源冲突(如手机号已被占用) |
503 | 服务未配置 |
📱 微信小程序登录
| 接口 | POST /api/auth/wx-login |
| 说明 | 用小程序 wx.login() 获取的临时 code 换取 openid 并登录 |
请求参数
| 参数 | 必填 | 说明 |
code | 是 | 小程序 wx.login() 返回的临时登录凭证 |
响应示例
{
"code": 0,
"msg": "ok",
"data": {
"token": "base64(member_id|timestamp|sign)",
"expires_in": 7200,
"member_no": "XYJ2026000001",
"nickname": "微信用户",
"avatar": "https://...",
"session_key": "xxx"
}
}
错误情况
400:code 为空
503:后台未配置微信小程序 AppID / AppSecret
401:微信返回错误(如 code 无效或已使用)
403:账号被禁用
📲 绑定手机号
| 接口 | POST /api/auth/bind |
| 说明 | 将手机号绑定到当前登录会员 |
请求参数
| 参数 | 必填 | 说明 |
token | 是 | 登录后获取的 Token |
mobile | 是 | 手机号,11 位 |
code | 是 | 短信验证码(演示模式固定 000000) |
响应示例
{
"code": 0,
"msg": "绑定成功",
"data": { "mobile": "13800138000" }
}
⚠️ 当前为演示模式,短信验证码固定为 000000,生产环境需接入短信服务。
✅ 验证 Token
| 接口 | POST /api/verify-token |
| 说明 | 校验 Token 是否有效并返回会员信息 |
请求参数
响应示例
{
"code": 0,
"msg": "ok",
"data": {
"member_id": 1,
"member_no": "XYJ2026000001",
"nickname": "测试用户"
}
}
🔄 刷新 Token
| 接口 | POST /api/refresh-token |
| 说明 | 在 Token 过期前换取新 Token(刷新模式放宽时间校验) |
请求参数
| 参数 | 必填 | 说明 |
token | 是 | 当前 Token(可已过期) |
响应示例
{
"code": 0,
"msg": "ok",
"data": {
"token": "新的base64令牌",
"expires_in": 7200
}
}
⚙️ 开放平台配置
| 接口 | GET /api/config |
| 说明 | 获取开放平台配置(脱敏,仅返回是否启用,不返回密钥) |
响应示例
{
"code": 0,
"msg": "ok",
"data": {
"login_methods": {
"password": true,
"sms": true,
"member_no": true,
"wx": true,
"alipay": false,
"unionpay": false,
"face": false,
"fingerprint": false
},
"platforms": {
"wechat": true,
"alipay": false,
"unionpay": false,
"sms": false
},
"site_name": "鑫宜家",
"site_logo": "https://tuan.xin1jia.com/static/picture/logo-1.png"
}
}
📋 登录方式列表
| 接口 | GET /api/methods |
| 说明 | 获取已启用的登录方式列表 |
响应示例
{
"code": 0,
"msg": "ok",
"data": {
"methods": [
{"name": "password", "label": "账号密码登录", "icon": "🔑"},
{"name": "sms", "label": "短信验证码登录", "icon": "📱"},
{"name": "member_no", "label": "用户ID登录", "icon": "🪪"},
{"name": "wx", "label": "微信登录", "icon": "💬"}
]
}
}
有对接需求?发送邮件至 biz@xin1jia.com,我们会安排专人对接。
© 2026 鑫宜家 开放平台