个人中心模块接口文档 ================ 基础信息 ------- - 基础路径: /api/v1/profile - 请求方式: REST - 数据格式: JSON - 认证方式: Bearer Token 数据结构 ------- UserProfile 用户资料对象: { id: number, // 用户ID name: string, // 姓名 avatar: string, // 头像URL gender: string, // 性别 age: number, // 年龄 phone: string, // 手机号 email: string, // 邮箱 address: string, // 地址 emergencyContacts: [ // 紧急联系人 { id: number, // 联系人ID name: string, // 联系人姓名 relation: string,// 关系 phone: string, // 联系电话 isDefault: boolean // 是否默认联系人 } ], healthInfo: { // 健康信息 bloodType: string, // 血型 allergies: string[], // 过敏史 chronicDiseases: string[], // 慢性病 medications: string[], // 在服用的药物 height: number, // 身高(cm) weight: number // 体重(kg) }, preferences: { // 偏好设置 theme: string, // 主题 fontSize: number, // 字体大小 notification: boolean, // 通知开关 language: string, // 语言 accessibility: { // 无障碍设置 voiceControl: boolean, highContrast: boolean, textToSpeech: boolean } } } API 接口 ------- 1. 获取用户资料 GET /api/v1/profile 响应示例: { "code": 200, "message": "success", "data": { // UserProfile对象 } } 2. 更新基本信息 PUT /api/v1/profile 请求参数: { "name": "张三", "gender": "男", "age": 65, "address": "北京市朝阳区..." } 3. 更新头像 POST /api/v1/profile/avatar Content-Type: multipart/form-data 请求参数: | 参数名 | 类型 | 必填 | 说明 | | file | File | 是 | 头像图片文件 | 响应示例: { "code": 200, "message": "success", "data": { "avatarUrl": "https://example.com/avatar.jpg" } } 4. 添加紧急联系人 POST /api/v1/profile/emergency-contacts 请求参数: { "name": "张小明", "relation": "子女", "phone": "13900139000", "isDefault": true } 5. 删除紧急联系人 DELETE /api/v1/profile/emergency-contacts/{id} 6. 设置默认联系人 PUT /api/v1/profile/emergency-contacts/{id}/default 7. 更新健康信息 PUT /api/v1/profile/health-info 请求参数: { "bloodType": "A", "allergies": ["花粉", "海鲜"], "chronicDiseases": ["高血压"], "medications": ["降压药"], "height": 170, "weight": 65 } 8. 更新偏好设置 PUT /api/v1/profile/preferences 请求参数: { "theme": "light", "fontSize": 16, "notification": true, "language": "zh-CN", "accessibility": { "voiceControl": true, "highContrast": false, "textToSpeech": true } } 9. 修改密码 PUT /api/v1/profile/password 请求参数: { "oldPassword": "旧密码", "newPassword": "新密码" } 10. 验证手机号 POST /api/v1/profile/verify-phone 请求参数: { "phone": "13800138000", "code": "123456" } 11. 发送验证码 POST /api/v1/profile/send-code 请求参数: { "phone": "13800138000" } 12. 绑定邮箱 POST /api/v1/profile/bind-email 请求参数: { "email": "example@example.com", "code": "123456" } 13. 获取账号安全等级 GET /api/v1/profile/security-level 响应示例: { "code": 200, "message": "success", "data": { "level": "medium", "score": 75, "suggestions": [ "建议开启双因素认证", "定期更新密码", "绑定备用手机号" ] } } 错误码说明 -------- | 错误码 | 说明 | | 200 | 成功 | | 400 | 请求参数错误 | | 401 | 未授权 | | 403 | 禁止访问 | | 404 | 资源不存在 | | 500 | 服务器内部错误 | 注意事项 ------- 1. 头像上传要求: - 支持格式:jpg、png - 大小限制:2MB - 建议尺寸:200x200px 2. 密码要求: - 长度:8-20位 - 必须包含数字和字母 - 不能与前3次使用的密码相同 3. 验证码规则: - 有效期:5分钟 - 每天最多发送5次 - 连续错误5次后锁定1小时 4. 安全建议: - 定期更新密码 - 及时验证紧急联系方式 - 保持联系人信息最新 5. 缓存策略: - 基本信息缓存:5分钟 - 头像缓存:1小时 - 设置缓存:即时失效