springboot项目之微信小程序授权登陆

引言

现实工作中小程序微信授权是最常见的需求,多少情况根据文档说明来基本上能够获取微信用户的openid。由于政策的改变,获取不到 微信头像和昵称,需要前端上传相关信息。

实战

简洁的两三行代码即可实现

复制代码
 @PostMapping("wxMinReg")
    public AjaxResult wxMinReg(@RequestParam("code") String code){
        if(StrUtil.isEmpty(code)){
            return AjaxResult.bad("缺少参数");
        }
        WxMinVo wxMinVo=new WxMinVo(wxMinAppid,wxMinSecret,code);
        String response = HttpUtil.get("https://api.weixin.qq.com/sns/jscode2session", BeanUtil.beanToMap(wxMinVo, String.valueOf(new HashMap<>())));
        WxMinLoginVo wxMinLoginVo= JSONUtil.toBean(response,WxMinLoginVo.class);
        String unionid=wxMinLoginVo.getUnionid();
        if(StrUtil.isEmpty(unionid)){
            return AjaxResult.bad("注册失败");
        }
        System.out.println("获取信息"+unionid);

        ***********************************
        //TODO 实现注册流程
}

我这里自定义两个实体WxMinVo、WxMinLoginVo。根据自己的项目需求来就行。

相关推荐
水深火乐8 分钟前
安全地生成验证码、密码和 Token
后端
小强198820 分钟前
SQL Server 慢查询怎么定位?一套从“卡”到“快”的完整排查流程
后端
水深火乐22 分钟前
interface和any
后端
步行cgn23 分钟前
MyBatis Error evaluating expression ‘ids‘. Return value (3) was not iterable 错误详
java·后端
神奇小汤圆26 分钟前
Spring Boot + LangChain4j实现RAG——从零搭建企业级知识库问答系统
后端
H_Peak30 分钟前
Python运算符与流程控制:if条件判断
后端
H_Peak32 分钟前
Python字符串操作:从基础到正则入门
后端
自进化Agent智能体33 分钟前
Hermes 子代理委派 —— 并行工作的艺术
后端
步行cgn35 分钟前
MyBatis 动态 SQL 中的 <foreach> 标签完全解析
后端
xiaotianyuanma1 小时前
【计算机毕业设计】基于Spring Boot的体育馆预约系统的设计与实现
java·spring boot·课程设计