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 小时前
【Python量化波动率实战 01】波动率是怎么算的:年化、滚动与区间估计一次讲清
后端
特立独行的猫A8 小时前
AI 时代,我为什么推荐用 cj-tauri 开发桌面应用
java·后端·python
金銀銅鐵8 小时前
从一个类名到一张类图:用反射自动生成 PlantUML
java·后端·uml
小郎君6588 小时前
注解式脱敏:用 Jackson 的 ContextualSerializer 做字段级策略(一)
spring boot·spring cloud
追逐时光者8 小时前
一款基于 .NET 开源、免费的数据库自治诊断平台
后端·.net
追逐时光者8 小时前
让 GitHub Copilot 更懂你的 .NET 代码风格:一份精简实用的 Copilot Instructions
后端·.net
小满zs9 小时前
Go语言第十八章(架构设计)
后端·go
山甫aa9 小时前
锁一篇搞定:乐观锁、悲观锁、CAS、数据库锁与分布式锁【从零开始的 Web 后端学习】
java·数据库·分布式·后端·学习·web
IT_陈寒10 小时前
Java开发实战:从入门到精通
前端·人工智能·后端
jktantan10 小时前
注解式脱敏:用 Jackson 的 ContextualSerializer 做字段级策略(一)
spring boot·后端·算法·spring cloud·系统架构