springboot开发微信公众号

一、环境搭建

1.建议申请测试号进行开发,原因测试号接口比较全面

申请地址:

ngrok下载地址:

二、验证环境有效性

环境搭建好以后,新建一个springboot的web工程,测试环境的有效性:

1.工程的依赖:

<dependencies>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-web</artifactId>
		</dependency>

		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-tomcat</artifactId>
			<scope>provided</scope>
		</dependency>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-test</artifactId>
			<scope>test</scope>
		</dependency>
	</dependencies>
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;

public class EncryptionUtil {

    private static final char[] HEX_DIGITS = { 0, 1, 2, 3, 4, 5,
            6, 7, 8, 9, a, b, c, d, e, f };

    /**
     * 加密
     * @param algorithm 算法名称
     * @param body      加密的字符串
     * @return          加密过后的字符串
     */
    public static String encrypt(String algorithm,String body){
        if(algorithm==null||body==null){
            return null;
        }
        try {
            //这是java自带的加密工具
            MessageDigest digest = MessageDigest.getInstance(algorithm);
            digest.update(body.getBytes());
            return getFormattedText(digest.digest());
        } catch (NoSuchAlgorithmException e) {
            e.printStackTrace();
            return null;
        }
    }

    private static String getFormattedText(byte[] bytes) {
        int len = bytes.length;
        StringBuilder buf = new StringBuilder(len * 2);
        // 把密文转换成十六进制的字符串形式
        for (int j = 0; j < len; j++) {
            buf.append(HEX_DIGITS[(bytes[j] >> 4) & 0x0f]);
            buf.append(HEX_DIGITS[bytes[j] & 0x0f]);
        }
        return buf.toString();
    }

}

4.新增接口类,以验证请求

6.通过测试号平台进行验证

经验分享 程序员 微信小程序 职场和发展