Skip to content

用户修改昵称接口

用于实现用户修改昵称功能,支持通过GET方式传递参数,参数需根据后台是否启用“用户令牌校验”灵活选择启用则仅需传token,无需传user和pass未启用则需传user和pass,应用签名可直接从后台复制使用。

请求地址 GET / POST

http
https://nobase.cn/api/user/change_nickname

请求参数

参数名类型必选说明
appidstring✅ 是应用ID,填写从开发者中心获取的应用唯一标识
nicknamestring✅ 是用户新昵称,填写需要修改的新昵称(需符合后台昵称格式要求,如长度、特殊字符限制)
signaturestring✅ 是应用签名,直接从后台复制获取,无需手动生成
tokenstring❌ 否用户令牌,仅在后台应用配置启用“用户令牌校验”时需传递;启用后无需再传user和pass
userstring条件必选用户账号,仅在未启用“用户令牌校验”时需填写
passstring条件必选用户密码,仅在未启用“用户令牌校验”时需填写

返回示例

成功响应(修改昵称成功)

json
{
  "code": 200,
  "msg": "success",
  "data": "更新成功"
}

返回数据结构

参数名类型说明
codenumber状态码:200=修改成功,400=参数错误/业务失败(如昵称重复、令牌无效),500=系统错误
msgstring状态描述:success=成功,fail=失败
datastring响应数据:code=200时为成功提示字符串,code≠200时为具体错误提示字符串

代码示例

javascript
// 1. 配置参数(启用令牌校验:传token,无需传user和pass;signature从后台复制)
const appid = "your_app_id"; // 应用ID(必填)
const token = "user_token_from_login"; // 登录成功后获取的用户令牌(必填)
const newNickname = "新昵称_顾江"; // 新昵称(必填)
const signature = "signature_copied_from_backend"; // 从后台直接复制的应用签名(必填)

// 2. 拼接GET参数
const params = new URLSearchParams({
  appid,
  token,
  nickname: newNickname,
  signature
});

// 3. 发起GET请求
const requestUrl = `https://nobase.cn/api/user/change_nickname?${params.toString()}`;
fetch(requestUrl)
  .then(response => {
    if (!response.ok) throw new Error(`HTTP错误:${response.status}`);
    return response.json();
  })
  .then(res => {
    if (res.code === 200) {
      console.log("昵称修改成功:", res.data);
      // 同步更新本地存储的用户昵称
      localStorage.setItem("userNickname", newNickname);
      alert("昵称已更新成功!");
    } else {
      console.error("昵称修改失败:", res.data);
      alert(`修改失败:${res.data}`);
    }
  })
  .catch(error => {
    console.error("请求异常:", error);
    alert("网络异常,请检查网络后重试");
  });
javascript
// 1. 配置参数(未启用令牌校验:传user和pass,无需传token;signature从后台复制)
const appid = "your_app_id"; // 应用ID(必填)
const user = "user123456"; // 用户账号(必填)
const pass = "user_password123"; // 用户密码(必填)
const newNickname = "新昵称_江川"; // 新昵称(必填)
const signature = "signature_copied_from_backend"; // 从后台直接复制的应用签名(必填)

// 2. 拼接GET参数
const params = new URLSearchParams({
  appid,
  user,
  pass,
  nickname: newNickname,
  signature
});

// 3. 发起GET请求
const requestUrl = `https://nobase.cn/api/user/change_nickname?${params.toString()}`;
fetch(requestUrl)
  .then(response => response.json())
  .then(res => {
    if (res.code === 200) {
      console.log("昵称修改成功:", res.data);
    } else {
      console.error("昵称修改失败:", res.data);
    }
  })
  .catch(error => console.error("请求异常:", error));
python
import requests

# 1. 配置参数(启用令牌校验:传token,无需传user和pass)
appid = "your_app_id"  # 应用ID(必填)
token = "user_token_from_login"  # 用户令牌(必填)
new_nickname = "新昵称_小顾"  # 新昵称(必填)
signature = "signature_copied_from_backend"  # 从后台复制的应用签名(必填)

# 2. 构造GET参数
params = {
    "appid": appid,
    "token": token,
    "nickname": new_nickname,
    "signature": signature
}

# 3. 发起GET请求
url = "https://nobase.cn/api/user/change_nickname"
try:
    response = requests.get(url, params=params, timeout=5)
    response.raise_for_status()  # 抛出HTTP错误
    res_data = response.json()

    if res_data["code"] == 200:
        print(f"昵称修改成功:{res_data['data']}")
        print(f"新昵称:{new_nickname}")
    else:
        print(f"昵称修改失败:{res_data['data']}")

except requests.exceptions.RequestException as e:
    print(f"请求异常:{str(e)}")
python
import requests

# 1. 配置参数(未启用令牌校验:传user和pass,无需传token)
appid = "your_app_id"  # 应用ID(必填)
user = "user123456"  # 用户账号(必填)
passwd = "user_password123"  # 用户密码(必填)
new_nickname = "新昵称_阿泽"  # 新昵称(必填)
signature = "signature_copied_from_backend"  # 从后台复制的应用签名(必填)

# 2. 构造GET参数
params = {
    "appid": appid,
    "user": user,
    "pass": passwd,
    "nickname": new_nickname,
    "signature": signature
}

# 3. 发起GET请求
url = "https://nobase.cn/api/user/change_nickname"
try:
    response = requests.get(url, params=params, timeout=5)
    res_data = response.json()

    if res_data["code"] == 200:
        print(f"操作结果:{res_data['data']}")
    else:
        print(f"失败原因:{res_data['data']}")

except requests.exceptions.RequestException as e:
    print(f"请求异常:{str(e)}")

注意事项

  1. 参数选择规则:后台启用“用户令牌校验”后,仅需传递 appidtokennicknamesignature;未启用时,需传递 appiduserpassnicknamesignature,避免冗余参数导致错误。
  2. 签名使用规范signature 直接从后台复制获取,无需手动计算;若返回“签名错误”,需核对后台签名是否与传递的值一致,确保无多余空格或字符。
  3. 令牌有效性:启用令牌校验后,需确保传递的 token 为登录成功后获取的有效令牌,且未超过 token_dead 失效时间;令牌无效时需引导用户重新登录。
  4. 业务失败场景:常见失败原因包括“昵称已存在”“令牌无效”“账号密码错误”“应用ID无效”,需根据 data 字段提示,在前端展示友好的用户提示(如“该昵称已被使用,请换一个试试”)。
  5. 安全提示:未启用令牌校验时,pass 参数以明文传递,建议生产环境使用HTTPS协议,防止密码在传输过程中被窃取;优先推荐启用令牌校验,提升接口安全性。