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。根据自己的项目需求来就行。

相关推荐
万少2 小时前
DeepSeek-V4-Flash 正式版上线了,但这 3 个坑我帮你提前踩了
前端·javascript·后端
明月_清风2 小时前
🚀 Palantir Foundry 本体论实战:当 Ontology 从"知识图谱"进化为"企业操作系统"
前端·后端
明月_清风2 小时前
从概念到代码:用 Ontology 构建你的第一个知识图谱
前端·后端
Python私教2 小时前
Django 6.1 邮件配置大改:旧项目如何平稳升级?
后端·python·django
Python私教2 小时前
Django 6.1 升级避坑:数据库版本不兼容怎么解决?
后端·python·django
Python私教2 小时前
Django 接口开发实测:新手还需要使用 REST 框架吗?
后端·python·django
techdashen2 小时前
Go设计取舍之三: 0.3ns每次的错误Benchmark
开发语言·后端·golang
xxwl5853 小时前
数据库后端接口测试报告
spring boot·mysql·tomcat
zzzzzz3103 小时前
别让大模型直接碰业务:我在 Spring Boot 里给 AI 操作加了一道“可拒绝的闸门”
人工智能·spring boot·spring
techdashen4 小时前
Go设计取舍之四: map不变时能否并发修改不同value
开发语言·后端·golang