Skip to content

添加用户

接口信息

接口地址:/api/v1/system/user/add

请求方式:POST

请求数据类型:application/json

响应数据类型:*/*

接口描述:

添加系统用户

请求示例:

javascript
{
  "uid": "test_user_001",
  "phone": "13800000001",
  "password": "Test@123456",
  "userName": "测试用户",
  "nickName": "测试昵称",
  "avatar": "",
  "email": "test@example.com",
  "role": "User"
}

请求参数

请求头

参数名类型必填描述示例值
AuthorizationstringAPI KeyBearer ak-xxxxeyJhbGciOiJIUzI1NiJ9

请求参数:

参数名称参数说明是否必须数据类型
uid用户唯一标识,可以记录三方账号系统唯一标识string
phone手机号码string
password密码string
userName姓名string
nickName昵称string
avatar头像string
email邮箱string
role角色,可用值: Admin, Userstring

响应参数:

参数名称参数说明类型schema
code业务状态码,0000 表示成功,其余失败string
displayCode源系统状态码,用于问题跟踪string
message错误描述信息string
data创建的用户IDinteger(int64)integer(int64)
tid跟踪唯一标识string
successboolean

响应示例:

javascript
{
	"code": "0000",
	"displayCode": "0000",
	"message": "success",
	"data": 1776073061,
	"tid": "6194301776073060981",
	"success": true
}

CURL示例

shell
curl 'http://127.0.0.1:8081/api/v1/system/user/add' \
  -H 'Content-Type: application/json' \
  -H 'Authorization: Bearer ak-d1f2129c4ba24629b8448af3354f9dd0' \
  --data-raw '{
  "uid": "test_user_001",
  "phone": "13800000001",
  "password": "Test@123456",
  "userName": "测试用户",
  "nickName": "测试昵称",
  "avatar": "",
  "email": "test@example.com",
  "role": "User"
}'

{"code":"0000","displayCode":"0000","message":"success","data":1776073061,"tid":"6194301776073060981","success":true}

测试用例

#场景参数要点状态码结果
1完整参数uid + phone + email + 其他0000成功
2仅传手机号phone + userName + role4000失败
3仅传邮箱email + userName + role4000失败
4未传手机号和邮箱userName + role4000失败
5同时传手机号和邮箱phone + email + userName + role0000成功
6Admin角色uid + phone + userName + role(Admin)4000失败

注意:根据实际测试结果,phone 和 email 必须同时传入,单独传其中一个会返回 4000: email and phone cannot be null at the same time

成功用例

完整参数创建用户

shell
curl 'http://127.0.0.1:8081/api/v1/system/user/add' \
  -H 'Content-Type: application/json' \
  -H 'Authorization: Bearer ak-d1f2129c4ba24629b8448af3354f9dd0' \
  --data-raw '{
  "uid": "test_user_001",
  "phone": "13800000001",
  "password": "Test@123456",
  "userName": "测试用户",
  "nickName": "测试昵称",
  "avatar": "",
  "email": "test@example.com",
  "role": "User"
}'

{"code":"0000","displayCode":"0000","message":"success","data":1776073061,"tid":"6194301776073060981","success":true}

失败用例

phone 和 email 不能同时为空

仅传 phone、仅传 email、或两者都不传,均返回:

json
{"code":"4000","displayCode":"4000","message":"email and phone cannot be null at the same time","data":null,"tid":"615061776075295649","success":false}

频率限制

短时间内频繁请求会触发每日请求次数限制:

json
{"code":"4290","displayCode":"4290","message":"每日请求次数超限","data":null,"tid":"905131776073214575","success":false}

TS模板示例

ts
// 参数接口
export interface UserAddDto {
  /*用户唯一标识,可以记录三方账号系统唯一标识 */
  uid?: string;
  /*手机号码 */
  phone?: string;
  /*密码 */
  password?: string;
  /*姓名 */
  userName?: string;
  /*昵称 */
  nickName?: string;
  /*头像 */
  avatar?: string;
  /*邮箱 */
  email?: string;
  /*角色,可用值: Admin, User */
  role?: 'Admin' | 'User';
}

// 响应接口
export interface AddUserRes {
  code: string;
  displayCode: string;
  message: string;
  data: number;
  tid: string;
  success: boolean;
}

/** 
 * 添加用户
 * @param {UserAddDto} params 
 * @returns
 */
export function addUser(params: UserAddDto): Promise<AddUserRes> {
  return request.post(`/api/v1/system/user/add`, params);
}