# springboot-weixin-mp **Repository Path**: lypJackson/springboot-weixin-mp ## Basic Information - **Project Name**: springboot-weixin-mp - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-04-25 - **Last Updated**: 2025-04-25 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 微信小程序登录注册Demo 这是一个基于Spring Boot + 微信小程序的登录注册系统,实现了微信小程序授权登录、用户信息获取和更新、头像上传与昵称修改等功能。 ## 项目结构 - `mp` 目录:微信小程序前端代码 - `src` 目录:Spring Boot后端代码 ## 后端功能 - 微信小程序授权登录 - 用户信息获取及更新 - JWT Token认证 - 用户手机号绑定 - 用户头像上传(阿里云OSS存储) - 用户昵称修改 ## 前端功能 - 微信登录 - 获取用户信息 - 获取用户手机号 - 用户信息展示 - 头像上传(使用微信官方open-type="chooseAvatar") - 昵称设置与修改(弹窗交互) - 个人中心页面 ## 技术栈 ### 后端 - Spring Boot 2.6.13 - MyBatis Plus 3.5.2 - MySQL - JWT - Hutool 5.8.11 - Fastjson 2.0.23 - 阿里云OSS对象存储 ### 前端 - 微信小程序原生开发 - 微信开放能力(获取头像、手机号等) ## 使用说明 ### 后端配置 1. 修改 `src/main/resources/application.yml` 中的数据库配置 2. 在 `src/main/resources/application.yml` 中配置微信小程序的AppID和AppSecret 3. 在 `src/main/resources/application.yml` 中配置阿里云OSS的相关参数 4. 运行 `src/main/resources/db/schema.sql` 创建数据库和表 ### 前端配置 1. 修改 `mp/app.js` 中的 `baseUrl` 为后端实际地址 2. 使用微信开发者工具导入 `mp` 目录,并配置小程序AppID ## 接口文档 ### 登录接口 - URL: `/api/user/wxLogin` - 方法: POST - 参数: `code` - 微信登录凭证 - 返回: token信息 ### 更新用户信息 - URL: `/api/user/updateUserInfo` - 方法: POST - 参数: 用户信息对象(包含nickname、avatarUrl、gender等) - 返回: 更新结果 ### 获取用户信息 - URL: `/api/user/getUserInfo` - 方法: GET - 返回: 用户信息对象 ### 上传头像 - URL: `/api/user/uploadAvatar` - 方法: POST - 参数: `file` - 头像文件(multipart/form-data) - 返回: 头像URL信息 ### 保存用户手机号 - URL: `/api/user/saveUserPhone` - 方法: POST - 参数: `phone` - 手机号码 - 返回: 保存结果 ### 获取手机号 - URL: `/api/user/getPhoneNumber` - 方法: POST - 参数: `code` - 手机号获取凭证 - 返回: 手机号信息 ## 微信新版获取头像与昵称流程 为适应微信小程序的隐私保护政策变更,本项目实现了符合规范的获取用户信息流程: 1. 头像获取:使用`open-type="chooseAvatar"`的button组件,用户主动点击授权 2. 昵称获取:通过自定义弹窗,使用`type="nickname"`的input组件 3. 隐私合规:不再使用已废弃的getUserInfo等接口 ## 开发与调试 1. 后端启动:执行SpringbootWeixinMpApplication的main方法 2. 前端调试:使用微信开发者工具打开mp目录 ## 注意事项 1. 需要在微信公众平台后台添加相关的隐私接口权限 2. 请确保阿里云OSS配置正确,否则无法上传头像 3. 首次使用请先进行微信登录