1. 修改当前用户信息
修改当前用户信息。
请求方式:PUT
请求地址:/bospersonnelservice/{appKey}/users/currentUser
1.1. 请求参数:
Headers:
参数名 | 类型 | 示例 | 是否必填 | 参数含义 |
---|---|---|---|---|
Authorization | string | c4570cb9ca324bc8ba7dd9d1967710ea | 是 | access_token |
PathParas:
参数名 | 类型 | 示例 | 是否必填 | 参数含义 |
---|---|---|---|---|
appKey | string | xb05cd3a35614caa85c0f8f86c58fcc1 | 是 | 应用Key |
SearchParas:
参数名 | 类型 | 示例 | 是否必填 | 参数含义 |
---|---|---|---|---|
NULL | NULL | NULL | NULL | NULL |
Body:
application/json:
{
"password":"XXX",
"email":"bosqqq@bim.com",
"emailValidateCode":"xxxx",// 邮箱验证码
"telephone":"1388888888",
"telValidateCode":"xxxx", // 电话验证码
"fullName":"aaa",
"xxx":"xxx" // 应用库users表中定义的用户扩展属性
"gsecretAnswer ":[
{
"question1":"aa",
"answer1":"aa"
}
……
]
}
1.2. 参数说明:
参数名 | 类型 | 示例 | 是否必填 | 参数含义 |
---|---|---|---|---|
NULL | NULL | NULL | NULL | NULL |
1.3. 正确返回:
(Http Status Code:200)
{
"code":"SUCCESS",
"message":"请求处理成功"
}
1.4. 状态码:
状态码 | code | message | data | 原因 |
---|---|---|---|---|
200 | TELEPHONE_FORMAT_ERROR | 手机号格式错误 | NULL | telephone不是手机号格式 |
200 | TELEPHONE_OCCUPIED | 手机号已被占用 | NULL | telephone已被占用 |
200 | CAPTCHA_INPUT_ERROR | 验证码错误,请重新输入 | NULL | 验证码校验不通过 |
200 | EMAIL_OCCUPIED | 邮箱已被占用 | NULL | 输入email,并且email已被占用 |
200 | EMAIL _FORMAT_ERROR | 邮箱格式错误 | NULL | 输入email,并且email不是邮箱格式 |
200 | CAN_NOT_UPDATE | 字段name不能被修改 | NULL | 输入name |
200 | CAN_NOT_UPDATE | 字段telephone不能被修改 | NULL | 该用户是BOS用户,并且修改telephone |
200 | THREE_SECRETANSWER_SUGGESTIONS | 安全问答建议三条记录 | NULL | 输入了gsecretAnswer,校验是否有三个问题和答案 |
200 | SECRETANSWER _TOO_LONG | 问题及答案仅限输入32个字符 | NULL | gsecretAnswer的每一条问题及答案总数超过32个字符 |
1.5. 注意事项:
- 根据token查出userKey,然后修改users表
- 只可修改用户基本信息(email、telephone、fullName)以及BOS应用库中扩展的用户信息
- 如果输入telephone,如果是内网,校验密码,如果是外网,telValidateCode不能为空,调用centerService的校验验证码接eepValidate为false),如果返回true就修改密码,如果返回false就报错
- 如果输入telephone,验证手机号格式,检查telephone是否与已注册手机号重复,验证范围为应用内的users表。
- 如果输入email,如果是内网,校验密码,如果是外网,emailValidateCode不能为空,调用centerService的校验验证码接口pValidate为false),如果返回true就修改密码,如果返回false就报错
- 如果输入gsecretAnswer,不管内网或者外网,均校验用户密码是否正确
- 如果输入email,并且验证邮箱格式和是否重复,验证范围为应用内的users表。
- 仅修改body中传入的参数
- name不能被修改(PS: credential无法仅根据name重新生成,centerService的修改用户信息接口,也不能修改name)
- 如果该用户是BOS用户,就不能修改telephone和email (PS: 防止user和users不一致,centerService在修改telephone、email的时候,必须根据user_app去检查telephone、email在应用内的users中是否存在,如果存在就报错,不存在就更新应用数据库的users的telephone、email)