微信公众号开发那些事

前言:最近接触的新项目是关于微信公众号的相关开发,其中会涉及到菜单栏的创建,配置跳转页面等等,在这过程中也是一边查资料一边摸索,也遇到一些坑,在这里分享下,如果有错误的地方或者写的不好的还请指点,也欢迎有疑问可以一起探讨。

一、准备工作

1. 微信SDK的选择

开发不一定就是自己造轮子,有优秀的开源的SDK那我们完全可以使用,这样可以避免采坑,还有繁杂的封装,从而提高开发效率 。这里我选择的是一位大佬的优秀SDK,作者一直在更新,目前已经来到了3.8.0版本。

1.1. SDK源码地址: github.

1.2. SDK部分Maven 依赖,可根据需求引入参考

		<dependency>
            <groupId>com.github.binarywang</groupId>
            <artifactId>(根据不同需求引入参考以下模板)</artifactId>
            <version>3.8.0</version>
        </dependency>
ArtifactId
微信小程序:weixin-java-miniapp
微信支付:weixin-java-pay
微信开放平台:weixin-java-open
公众号(包括订阅号和服务号):weixin-java-mp
企业号/企业微信:weixin-java-cp
(由于我是公众号开发,这里用到的是 weixin-java-mp)

1.3. JAVA项目相关配置

1.3.1. 配置application.yml(详细信息及对应公众平台配置值见目录 2.公众平台相关配置)

business:
  config:
    wechat:
      appId: # 公众号appid
      secret: # 公众号的appsecret
      token: # 接口配置里的Token值
      aesKey: # 接口配置里的EncodingAESKey值
      authUrl:

1.3.2. 配置SDK相关配置类
WeChatAppConfig.java 用来加载yml中的配置信息

import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Configuration;
@Getter
@Setter
@Configuration
@ConfigurationProperties(prefix = "business.config.wechat")
public class WeChatAppConfig {
   
     /**
     * 设置微信公众号的appId
     */
    private String appId;
    /**
     * 设置微信公众号的app secret
     */
    private String secret;
    /**
     * 设置微信公众号的token
     */
    private String token;
    /*
     * 设置微信公众号的 EncodingAESKey
     */
    private String aesKey;
    /**
     * 权限URL
     */
    private String authUrl;
}

SDK微信服务核心配置 WeChatMpConfig.java

import me.chanjar.weixin.common.api.WxConsts;
import me.chanjar.weixin.mp.api.WxMpMessageRouter;
import me.chanjar.weixin.mp.api.WxMpService;
import me.chanjar.weixin.mp.api.impl.WxMpServiceImpl;
import me.chanjar.weixin.mp.config.WxMpConfigStorage;
import me.chanjar.weixin.mp.config.impl.WxMpDefaultConfigImpl;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
import org.springframework.boot.context.properties.EnableConfigurationProperties;
import org.springframework.context.annotation.Bean;
import org
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值