查看原文
其他

今日代码 PK | 根据 code 获取小程序登录信息

编程导航-松柏 程序员鱼皮 2024-03-29

不知道大家是否为微信小程序提供过后端服务,

那里面的坑真是让人一言难尽,

最好就是大家调通一次之后就将代码保存起来或者直接使用现成的框架。

比如这里我需要根据一个 code 获取登录信息的接口,

示例代码:

public static WeChatLoginResponseDto getLoginInfo(String wxCode) throws Exception {
    Map<String, Object> params = new HashMap<>();
    params.put("appid", MINI_APP_ID);
    params.put("secret", MINI_APP_SECRET);
    params.put("js_code", wxCode);
    params.put("grant_type""authorization_code");
    String resultJson = HttpUtil.get(LOGINURL, params);
    log.info("WeChatHelper.getLoginInfo: " + resultJson);
    ObjectMapper objectMapper = new ObjectMapper();
    WeChatLoginResponseDto wxLoginInfo = objectMapper.readValue(resultJson, WeChatLoginResponseDto.class);
    return wxLoginInfo;
}

可以看到是有一些繁琐的,

除此之外,我们还能使用现成的框架来实现,比如wxJava

示例代码:

@Resource
private WxMaService wxMaService;

public WxMaJscode2SessionResult getLoginInfo(String wxCode) throws Exception {
    return wxMaService.jsCode2SessionInfo(wxCode);
}

你喜欢哪种方式呢?欢迎投票并在评论区讨论。

完整代码片段来源于代码小抄,欢迎点击进入小程序阅读!

在线访问:https://www.codecopy.cn/post/0nf049

更多优质代码欢迎进入小程序查看!

往期推荐

今日代码 PK | 统一响应结果

今日代码 PK | 处理 Spring 事务和锁冲突

今日代码 PK | 使用 try-with-resources 关闭资源

今日代码 PK | 避免循环查库

今日代码 PK | 使用 Optional 判空

继续滑动看下一个
向上滑动看下一个

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存