Files
wts/back/doc/API/viewProfile.md
2026-02-26 19:22:38 +08:00

3.7 KiB
Raw Blame History

查看个人信息 API

  • 路径: /api/v3/view_profile
  • 方法: GET
  • 功能: 获取用户的个人信息。

描述

此接口用于查询用户的详细个人资料。普通用户可以查看自己的信息,而管理员可以查看任何用户的信息。

认证

  • 需要 JWT: 是
  • 权限要求:
    • 普通用户 (user 或更高权限) 可以查看自己的信息。
    • 管理员 (admin 权限) 可以查看任何用户的信息。

请求

请求头

Header 类型 描述
Authorization string Bearer <your_jwt_token>

查询参数

参数 类型 描述 是否必须
who string 要查询用户的微信 OpenID。如果留空则默认为当前登录用户的 OpenID。

请求示例 (查看自己信息):

GET /api/v3/view_profile

请求示例 (管理员查看他人信息):

GET /api/v3/view_profile?who=hajimihajimihajimi

响应

成功响应 (200 OK)

响应体包含一个 profile 对象,其中有用户的详细信息。

字段 类型 描述
success boolean true 表示操作成功
msg string 成功的提示信息
profile object 用户信息对象
profile.sid string 学号
profile.name string 姓名
profile.block string 宿舍楼
profile.access string 用户权限等级 (例如: "user", "admin")
profile.room string 房间号
profile.phone string 手机号码
profile.isp string 宽带运营商
profile.account string 宽带账号
profile.wx string 微信 OpenID

响应示例:

{
  "success": true,
  "msg": "user profile",
  "profile": {
    "sid": "20230001001",
    "name": "张三",
    "block": "XH",
    "access": "user",
    "room": "1501",
    "phone": "13800138000",
    "isp": "mobile",
    "account": "12345678901",
    "wx": "hajimihajimihajimi"
  }
}

失败响应

400 Bad Request (业务逻辑错误)

msg 内容 errType 描述
"无法找到该微信账户所请求的用户" logic 目标用户不存在

403 Forbidden (权限错误)

  • 当非管理员用户尝试查看其他用户的信息时返回。
  • 当非活跃用户(如 unregistered)尝试调用此接口时返回。
{
  "success": false,
  "msg": "only admins can view other users' profiles",
  "errType": "auth"
}
{
  "success": false,
  "msg": "only active users can access this API",
  "errType": "auth"
}

500 Internal Server Error (服务器内部错误)

当发生未预料到的数据库错误或其他内部错误时返回。

{
  "success": false,
  "msg": "system met a uncaught error,please view logs.",
  "errType": "internal"
}

注意事项

  • 如果不提供 who 查询参数API 将自动查询当前通过 JWT 认证的用户的信息。
  • 只有管理员权限的用户才能使用 who 参数查询其他用户的信息。