跳到主要内容

用户

写在前面

关于 Authorization 的说明:

  1. Authorization 的获取:用户登录成功后,返回访问的 accessToken 以及 refreshTokenaccessToken 有效期 24 小时;refreshToken 有效期永久;在 accessToken 过期的时候,应用必须退出登录,要求用户重新登录应用;

  2. accessToken 的使用:accessToken 即为 Authorization,跟用户相关的所有操作,均需要在 Header 中传该授权信息,系统会自动解析用户 userId 并进行用户相关操作;

  3. refreshToken 的使用:当 accessToken 过期时,可以调用"刷新用户访问 Token"方法获取到新的 accessToken;

关于 terminal 的说明:

每个接口请求,默认需要带上 terminal,具体如下:

平台编号平台
0未知
10微信小程序
11微信公众号
20H5网页
31手机APP

发送手机号验证码

  • URL/app-api/member/auth/send-sms-code
  • MethodPOST
  • 需要鉴权:是

请求参数

参数类型约束
mobileString手机号
sceneLong登录场景1:用户手机号验证码登录 2:修改手机号 3:修改密码 4:重置密码

请求示例

{ "mobile": "18612982936", "scene": 1 }

响应示例

{ "code": 0, "data": true, "msg": "成功" }
说明

如果无异常,则返回 true。

响应说明

参数类型说明
dataBooleantrue 发送成功,false 失败

手机号验证码校验

  • URL/app-api/member/auth/validate-sms-code
  • MethodPOST
  • 需要鉴权:是

请求参数

参数类型约束
mobileString手机号
sceneLong登录场景1:用户手机号验证码登录 2:修改手机号 3:修改密码 4:重置密码
codeString验证码

请求示例

{ "mobile": "18612982936", "scene": 4, "code": "4942" }

响应示例

{ "code": 0, "data": true, "msg": "成功" }
说明

校验成功后,验证码失效。

响应说明

参数类型说明
dataBooleantrue 校验成功,false 失败

手机号+验证码登录

  • URL/app-api/member/auth/sms-login
  • MethodPOST
  • 需要鉴权:是

请求参数

参数类型约束
mobileString手机号,必传
codeString手机验证码,必传
loginTypeLong登录方式10-一般登录 20-一键快捷登录,必传
socialTypeLong社交平台类型34:微信小程序(第三方登录时需要)
socialCodeString授权码,小程序前端通过 wx.login 方法获得
socialStateString默认固定值:default

请求示例

{
"mobile": "18612982956",
"code": "1651",
"loginType": 20,
"socialType": 34,
"socialCode": "0c3WH0nl2G0UCe4T18ml2Xbmk54WH0nz",
"socialState": "default"
}

响应示例

{
"code": 0,
"data": {
"userId": 305,
"accessToken": "8946238c28914ee1a669895e8a9b846a",
"refreshToken": "bfaa4cb2f35740389f5d6805656fe6ec",
"expiresTime": 1731576131347,
"openid": null
},
"msg": "成功"
}

响应说明

参数类型说明
userIdLong用户数据编号
accessTokenString登录token
refreshTokenString刷新token
expiresTimeLong到期时间
openidString微信小程序等登录时会用到
说明

验证码只能使用一次。


获取用户信息

  • URL/app-api/member/user/get
  • MethodGET
  • 需要鉴权:是

请求参数

无参数。

请求示例

GET /app-api/member/user/get

响应示例

{
"code": 0,
"data": {
"id": 1,
"nickname": "用户220706改",
"avatar": "https://jingqihui.oss-cn-beijing.aliyuncs.com/tmp_b3a3f692487f2df63d2ceda368acd98d5674340387aa3bde.jpg",
"mobile": "18612982936",
"sex": 0,
"point": 29,
"experience": 498,
"level": {
"id": 1,
"name": "青铜",
"level": 1,
"icon": "https://jingqihui.oss-cn-beijing.aliyuncs.com/26cd5da9-b4a3-423a-b495-927f9dba3eb4.png",
"description": "专属折扣\nVIP购物享全场商品 9折起",
"discountPercent": 100,
"backgroundUrl": "https://jingqihui.oss-cn-beijing.aliyuncs.com/26cd5da9-b4a3-423a-b495-927f9dba3eb4.png"
},
"brokerageEnabled": null,
"status": 0
},
"msg": "成功"
}

响应说明

参数类型说明
idLong用户数据编号
nicknameString用户昵称
avatarString头像
mobileString手机号
statusLong状态0-开启 1-关闭(注销)
level对象等级信息
level.idLong数据编号
level.nameString会员名称
level.levelLong会员等级数字
level.iconString会员图标
level.descriptionString权益描述
level.discountPercentStringVIP会员享受的折扣
level.backgroundUrlString背景图

修改用户信息

  • URL/app-api/member/user/update
  • MethodPOST
  • 需要鉴权:是

请求参数

参数类型约束
nicknameString昵称
avatarString头像
sexLong性别1-男 2-女 3-未知
statusLong状态0-开启 1-关闭

请求示例

{ "nickname": "吕国栋", "avatar": "https://oss.kudi.wiki/onps-test/logo.png", "sex": 0, "status": 0 }

响应示例

{ "code": 0, "data": true, "msg": "成功" }

响应说明

参数类型约束
dataBooleantrue 成功

微信小程序一键登录

  • URL/app-api/member/auth/weixin-mini-app-login
  • MethodPOST
  • 需要鉴权:是

请求参数

参数类型约束
phoneCodeString手机 code,小程序通过 wx.getPhoneNumber 获得,必传
loginCodeString登录 code,小程序通过 wx.login 方法获得,必传
stateString默认:default,必传

请求示例

{ "phoneCode": "xxx", "loginCode": "xxx", "state": "default" }

响应示例

{
"code": 0,
"data": {
"userId": 305,
"accessToken": "8946238c28914ee1a669895e8a9b846a",
"refreshToken": "bfaa4cb2f35740389f5d6805656fe6ec",
"expiresTime": 1731576131347,
"openid": null
},
"msg": "成功"
}

响应说明

参数类型说明
userIdLong用户数据编号
accessTokenString登录token
refreshTokenString刷新token
expiresTimeLong到期时间
openidString微信小程序等登录时会用到

用户退出登录

  • URL/app-api/member/auth/logout
  • MethodPOST
  • 需要鉴权:是

请求参数

无参数。

请求示例

POST /app-api/member/auth/logout

响应示例

{ "code": 0, "data": true, "msg": "成功" }

响应说明

参数类型说明
dataBooleantrue 成功,false 失败

用户注销账户

用户注销账户的时候,调用本接口。会清零用户相关权益并删除该账户。

  • URL/app-api/member/user/logoff
  • MethodPOST
  • 需要鉴权:是

请求参数

无参数,必须传鉴权信息。

请求示例

POST /app-api/member/user/logoff

响应示例

{ "code": 0, "data": true, "msg": "成功" }

响应说明

参数类型说明
dataBooleantrue 成功,false 失败

刷新用户访问Token

  • URL/app-api/member/auth/refresh-token
  • MethodPOST
  • 需要鉴权:是

请求参数

参数类型约束
refreshTokenString登录成功后返回的token

请求示例

{ "refreshToken": "2d1342acbc3e42c7b90404ff7be01217" }

响应示例

{
"code": 0,
"data": {
"userId": 305,
"accessToken": "e2e934d29aaa4c9392aed9220fc22757",
"refreshToken": "2d1342acbc3e42c7b90404ff7be01217",
"expiresTime": 1731602463203,
"openid": null
},
"msg": "成功"
}

响应说明

参数类型说明
userIdLong用户数据编号
accessTokenString登录token
refreshTokenString刷新token
expiresTimeLong到期时间
openidString微信小程序等登录时会用到

重置密码

说明

需要先发送手机号验证码(/app-api/member/auth/send-sms-code),再调用本接口进行验证码校验并进行新密码的重置。

  • URL/app-api/member/user/reset-password
  • MethodPOST
  • 需要鉴权:是

请求参数

参数类型约束
mobileString手机号
passwordString新密码,密码长度为 4-16 位
codeString验证码

请求示例

{ "mobile": "18612982936", "password": "123456", "code": "4719" }

响应示例

{ "code": 0, "data": true, "msg": "成功" }

响应说明

参数类型约束
dataBooleantrue 提交成功