模块提供 : yudao-module-member
前置URL : /api/v1/member
更新日期 : 2025年 7月 12日
重要提示 :
使用本 API 前,请确保后端的 yudao-module-member 模块已在主 pom.xml 文件中启用。
租户ID说明 :
认证相关接口 (如登录、注册、发送验证码)位于 /api/v1/member/auth 下,均不需要 在请求头中传递 tenant-id。
业务相关接口 (如获取用户信息、实名认证、修改资料)位于 /api/v1/member/user 或 /api/v1/member/verify 等路径下,在用户登录成功后,访问这些接口时必须 传递 tenant-id。
1. 认证接口 (/api/v1/member/auth)
功能描述 : 用户通过手机号和密码进行身份验证,获取访问令牌。
HTTP 方法 : POST
接口地址 : /api/v1/member/auth/login
Content-Type : application/json
认证 : 否
参数名
类型
是否必填
描述
mobile
String
是
手机号码
password
String
是
用户密码
{
"mobile" : " 15601691234" ,
"password" : " admin"
}
{
"code" : 0 ,
"data" : {
"userId" : 1 ,
"token" : " ACCESS_TOKEN_STRING" ,
"refreshToken" : " REFRESH_TOKEN_STRING"
},
"msg" : " 成功"
}
功能描述 : 通过手机号和验证码进行登录。如果手机号未注册,系统将自动创建一个新用户并完成登录。这是一个两步过程。
HTTP 方法 : POST
接口地址 : /api/v1/member/auth/send-sms-code
Content-Type : application/json
认证 : 否
参数名
类型
是否必填
描述
mobile
String
是
手机号码
scene
Integer
是
发送场景。1: 登录/注册, 4: 重置/忘记密码
{
"mobile" : " 15601691234" ,
"scene" : 1
}
HTTP 方法 : POST
接口地址 : /api/v1/member/auth/sms-login
Content-Type : application/json
认证 : 否
参数名
类型
是否必填
描述
mobile
String
是
手机号码
code
String
是
短信验证码
功能描述 : 当 accessToken 过期时,使用 refreshToken 获取新的令牌。
HTTP 方法 : POST
接口地址 : /api/v1/member/auth/refresh-token?refreshToken=YOUR_REFRESH_TOKEN
认证 : 否
功能描述 : 用户主动登出,服务端会使当前 accessToken 失效。
HTTP 方法 : POST
接口地址 : /api/v1/member/auth/logout
认证 : 是 (需要携带有效的 accessToken)
2. 密码管理 (/api/v1/member/user)
功能描述 : 用户在未登录状态下,通过"手机号+验证码"重置密码。
HTTP 方法 : PUT
接口地址 : /api/v1/member/user/reset-password
Content-Type : application/json
认证 : 否
参数名
类型
是否必填
描述
mobile
String
是
手机号码
code
String
是
使用场景 4 收到的短信验证码
password
String
是
要设置的新密码
功能描述 : 用户在登录状态下,修改自己的密码。
HTTP 方法 : PUT
接口地址 : /api/v1/member/user/update-password
Content-Type : application/json
认证 : 是
参数名
类型
是否必填
描述
oldPassword
String
是
旧密码
newPassword
String
是
新密码
3. 用户信息 (/api/v1/member/user)
功能描述 : 获取当前登录用户的详细信息。
HTTP 方法 : GET
接口地址 : /api/v1/member/user/get
认证 : 是
功能描述 : 修改当前登录用户的昵称、头像等基本信息。
HTTP 方法 : PUT
接口地址 : /api/v1/member/user/update
Content-Type : application/json
认证 : 是
参数名
类型
是否必填
描述
nickname
String
否
用户昵称
avatar
String
否
用户头像,应为文件上传后返回的 URL
在许多业务场景中,例如实名认证、企业认证或更新带图片的资料,都需要前端遵循一个标准的两步流程。这个流程解耦了文件传输和业务数据处理,是推荐的最佳实践。
第一步:上传文件
目的 :将图片、文档等二进制文件上传到服务器,并获取一个可用于后续引用的唯一标识(通常是文件 URL)。
接口 :调用通用的文件上传接口 (/infra/file/upload)。该接口的详细定义见本文档第 6 节。
操作 :前端使用 multipart/form-data 格式,将文件作为 file 参数进行 POST 请求。
结果 :成功后,前端会从响应中获得一个字符串,即文件的访问 URL,例如 "/infra/file/2025/07/12/your-file-name.jpg"。
第二步:提交业务数据
目的 :将业务相关的信息(如表单字段)与第一步中获取的文件 URL 一同提交给相应的业务接口。
接口 :调用具体的业务接口,例如个人实名认证接口 (/member/verify/submit)。
操作 :前端构建一个 JSON 对象,将表单字段和文件 URL 作为其中的属性,然后通过 application/json 格式进行 POST 或 PUT 请求。
结果 :后端服务接收到业务数据和文件 URL,完成整个业务逻辑。
以下是结合上述流程完成个人实名认证的完整步骤。
前端调用文件上传接口,记录下返回的 data 字段(文件 URL)。
Request :
POST /infra/file/upload HTTP/1.1
Host: api.your-domain.com
Content-Type: multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW
Authorization: Bearer YOUR_ACCESS_TOKEN
------WebKitFormBoundary7MA4YWxkTrZu0gW
Content-Disposition: form-data; name="file"; filename="face.jpg"
Content-Type: image/jpeg
(二进制文件内容)
------WebKitFormBoundary7MA4YWxkTrZu0gW--
Response :
{
"code" : 0 ,
"data" : " /infra/file/2025/07/12/face.jpg" ,
"msg" : " 成功"
}
前端使用上一步获得的 URL,调用个人实名认证接口:
Request :
POST /member/verify/submit HTTP/1.1
Host: api.your-domain.com
Content-Type: application/json
Authorization: Bearer YOUR_ACCESS_TOKEN
{
"name" : " 张三" ,
"idCard" : " 11010119900307213X" ,
"faceImage" : " /infra/file/2025/07/12/face.jpg"
}
至此,整个带有文件上传的业务流程完成。
功能描述 : 提交个人用户的真实姓名、身份证和人脸照片以进行实名认证。请务必遵循第 4 节描述的"先上传,后提交"流程 。
HTTP 方法 : POST
接口地址 : /member/verify/submit
Content-Type : application/json
认证 : 是
参数名
类型
是否必填
描述
name
String
是
真实姓名
idCard
String
是
身份证号码
faceImage
String
是
人脸照片 URL(通过文件上传接口获取)
{
"name" : " 张三" ,
"idCard" : " 11010119900307213X" ,
"faceImage" : " /infra/file/2025/07/12/face.jpg"
}
功能描述 : 提交企业的详细信息和相关证件以进行认证。同样遵循第 4 节描述的流程 ,需要预先上传所有证件图片。认证成功后,提交的信息将自动更新到您的企业档案中。
HTTP 方法 : POST
接口地址 : /member/verify/submit-enterprise
Content-Type : application/json
认证 : 是
参数名
类型
是否必填
描述
enterpriseId
Long
是
企业ID
name
String
是
企业名称
creditCode
String
是
统一社会信用代码
legalName
String
是
企业法人姓名
legalIdCard
String
是
法人身份证号码
contactName
String
是
联系人姓名
contactMobile
String
是
联系人手机
location
String
否
公司所在地
industry
String
否
公司行业
scale
String
否
公司规模
description
String
否
公司简介
businessLicenseUrl
String
否
营业执照图片URL(通过文件上传接口获取)
legalIdCardFrontUrl
String
否
法人身份证正面URL(通过文件上传接口获取)
legalIdCardBackUrl
String
否
法人身份证背面URL(通过文件上传接口获取)
{
"enterpriseId" : 1024 ,
"name" : " 示例科技有限公司" ,
"creditCode" : " 91310000MA1H2K3L4M" ,
"legalName" : " 李四" ,
"legalIdCard" : " 310101198501015678" ,
"contactName" : " 王五" ,
"contactMobile" : " 13888888888" ,
"location" : " 上海市浦东新区" ,
"industry" : " 信息技术" ,
"businessLicenseUrl" : " /infra/file/2025/07/12/license.jpg"
}
功能描述 : 查询当前用户的企业认证或个人实名认证的最新状态。
HTTP 方法 : GET
接口地址 : /member/verify/get-status
认证 : 是
{
"code" : 0 ,
"data" : {
"verifyType" : 2 , // 1: 个人, 2: 企业
"verifyStatus" : 2 , // 0: 未申请, 1: 审核通过, 2: 审核中, 3: 审核不通过
"enterprise" : {
"name" : " 示例科技有限公司" ,
"licenseNumber" : " 91310000MA1H2K3L4M" ,
// ... 其他企业信息
},
"personal" : null ,
"verifyReason" : null
},
"msg" : " 成功"
}
功能描述 : 上传文件(如头像、证件照片),返回文件访问 URL。该接口由 yudao-module-infra 模块提供。
HTTP 方法 : POST
接口地址 : /infra/file/upload
Content-Type : multipart/form-data
认证 : 是
参数名
类型
是否必填
描述
file
File
是
要上传的文件内容
path
String
否
自定义文件路径
{
"code" : 0 ,
"data" : " /infra/file/2025/07/12/your-file-name.jpg" ,
"msg" : " 成功"
}
印章管理支持个人印章和企业印章两种类型,根据用户身份自动区分。
个人印章 :归属于个人用户,只能由本人创建和使用,不需要授权
企业印章 :归属于企业,由企业管理员创建,需要授权给成员使用
功能描述 : 根据当前活动身份(个人/企业)获取对应的印章列表。
HTTP 方法 : GET
接口地址 : /member/seal/page
认证 : 是
参数名
类型
是否必填
描述
pageNo
Integer
否
页码,默认为1
pageSize
Integer
否
每页记录数,默认为10
name
String
否
印章名称,模糊匹配
identityType
Integer
否
身份类型:1-个人,2-企业
enterpriseId
Long
否
企业编号,当身份类型为企业时必填
{
"code" : 0 ,
"data" : {
"list" : [
{
"id" : 1 ,
"name" : " 我的个人印章" ,
"picture" : " /infra/file/2025/07/12/seal1.png" ,
"createType" : 1 ,
"identityType" : 1 ,
"createTime" : " 2025-07-12T10:00:00"
}
],
"total" : 1
},
"msg" : " 成功"
}
功能描述 : 创建个人印章。请务必遵循第 4 节描述的"先上传,后提交"流程 。
HTTP 方法 : POST
接口地址 : /member/user-seal/create
Content-Type : application/json
认证 : 是
参数名
类型
是否必填
描述
name
String
是
印章名称
picture
String
是
印章图片URL(通过文件上传接口获取)
createType
Integer
是
创建方式:1-模板生成,2-手绘,3-上传图片
{
"name" : " 我的个人印章" ,
"picture" : " /infra/file/2025/07/12/seal1.png" ,
"createType" : 1
}
功能描述 : 更新个人印章信息。
HTTP 方法 : PUT
接口地址 : /member/user-seal/update
Content-Type : application/json
认证 : 是
参数名
类型
是否必填
描述
id
Long
是
印章编号
name
String
是
印章名称
picture
String
是
印章图片URL
createType
Integer
是
创建方式:1-模板生成,2-手绘,3-上传图片
功能描述 : 删除个人印章。
HTTP 方法 : DELETE
接口地址 : /member/user-seal/delete
认证 : 是
参数名
类型
是否必填
描述
id
Long
是
印章编号
功能描述 : 获取个人印章详细信息。
HTTP 方法 : GET
接口地址 : /member/user-seal/get
认证 : 是
参数名
类型
是否必填
描述
id
Long
是
印章编号
功能描述 : 获取个人印章分页列表。
HTTP 方法 : GET
接口地址 : /member/user-seal/page
认证 : 是
参数名
类型
是否必填
描述
pageNo
Integer
否
页码,默认为1
pageSize
Integer
否
每页记录数,默认为10
name
String
否
印章名称,模糊匹配
功能描述 : 创建企业印章,需要企业管理员权限。
HTTP 方法 : POST
接口地址 : /member/enterprise-seal/create
Content-Type : application/json
认证 : 是
参数名
类型
是否必填
描述
enterpriseId
Long
是
企业编号
name
String
是
印章名称
picture
String
是
印章图片URL(通过文件上传接口获取)
createType
Integer
是
创建方式:1-模板生成,2-手绘,3-上传图片
功能描述 : 更新企业印章信息,需要企业管理员权限。
HTTP 方法 : PUT
接口地址 : /member/enterprise-seal/update
Content-Type : application/json
认证 : 是
参数名
类型
是否必填
描述
id
Long
是
印章编号
name
String
是
印章名称
picture
String
是
印章图片URL
createType
Integer
是
创建方式:1-模板生成,2-手绘,3-上传图片
功能描述 : 删除企业印章,需要企业管理员权限。
HTTP 方法 : DELETE
接口地址 : /member/enterprise-seal/delete
认证 : 是
参数名
类型
是否必填
描述
id
Long
是
印章编号
功能描述 : 将企业印章授权给企业成员使用,需要企业管理员权限。
HTTP 方法 : POST
接口地址 : /member/enterprise-seal/grant-create
Content-Type : application/json
认证 : 是
参数名
类型
是否必填
描述
sealId
Long
是
印章编号
enterpriseId
Long
是
企业编号
enterpriseUserId
Long
是
企业成员编号
功能描述 : 删除企业印章授权,需要企业管理员权限。
HTTP 方法 : DELETE
接口地址 : /member/enterprise-seal/grant-delete
认证 : 是
参数名
类型
是否必填
描述
id
Long
是
授权记录编号
功能描述 : 获取某个企业印章的授权列表,需要企业管理员权限。
HTTP 方法 : GET
接口地址 : /member/enterprise-seal/grant-list
认证 : 是
参数名
类型
是否必填
描述
sealId
Long
是
印章编号
功能描述 : 获取当前用户被授权的企业印章列表。
HTTP 方法 : GET
接口地址 : /member/enterprise-seal/grant-page-by-user
认证 : 是
参数名
类型
是否必填
描述
pageNo
Integer
否
页码,默认为1
pageSize
Integer
否
每页记录数,默认为10
enterpriseId
Long
是
企业编号