Home WeChat Applet WeChat Development How to become a developer in WeChat development

How to become a developer in WeChat development

Feb 28, 2017 am 09:32 AM
WeChat development

1. Three types of WeChat public accounts

Go to the URL: https://mp.weixin.qq.com When registering WeChat account, it is required We choose among the current three types of WeChat official accounts (subscription account, service account, enterprise account). Their differences are as follows:

How to become a developer in WeChat development

The ones that are used more Public accounts are subscription accounts and service accounts. Enterprise accounts are generally used by employees of the same company to communicate and collaborate. Enterprise accounts are not public and inaccessible to the outside world. Only employees of the company can access them; subscription accounts and service accounts are open to the public. Yes, anyone can follow. The subscription account is generally used to regularly push some graphic information to followers, and can also provide some other query services. The service account has WeChat payment function, so it is generally used for commercial purposes. For example, micro mall, micro auction, etc.

2. Turn on the WeChat developer function

After applying for a WeChat public account, if you need to develop on the WeChat platform, you must first To enable the WeChat developer function. To enable the WeChat developer function, you need to write verification code, and there must be an accessible URL. First log in to the WeChat public platform: https://mp.weixin.qq.com/

Click "Developer Center", check "I Agree", and click "Become a Developer":

How to become a developer in WeChat development

Come to the following page:

How to become a developer in WeChat development

Click "Configuration Items", there is a URL and Token that we need to fill in, the URL refers to the opening When using the developer function, the WeChat server will send a get request to the URL address. The parameters of the get request are:

1) Timestamp: timestamp

2) Random number: nonce

3) Random string: echostr

4) Summary information of the SHA-1 algorithm of a string composed of the values ​​of the above three parameters in dictionary order: signature

What we want to accomplish is: obtain the four parameters timestamp, nonce, echostr, and signature in the get request processing class of the filled-in URL, and then calculate their values ​​in the same way for the string composed of timestamp, nonce, and token in dictionary order. The summary information signature2 of the SHA-1 algorithm is then compared to see if the values ​​of signature2 and signature are the same. If they are the same, echostr is returned as is. If the WeChat server receives echostr, the developer function is successfully enabled. Note that the token here is the Token to be filled in above.

Note: If you have connected to Alipay, you will find that there is a small difference between the verification here and Alipay’s verification. Alipay verification The strings are sorted according to the dictionary order of the keys in the key-value pairs composed of parameters and parameter values, and the composition of the string is: key1=value1+ & + key2=value2; and the string that WeChat participates in verification is: value1 + value2 + ... does not include key, and is sorted according to the field order of value.

The corresponding java code is as follows:

Servlet that handles WeChat get requests:

/**
 * 微信请求处理的核心类
 */
public class CoreServlet extends HttpServlet 
{
	private static final long serialVersionUID = 4440739483644821986L;

	/**
	 * 请求校验(确认请求来自微信服务器)
	 */
	public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException 
	{
		// 微信服务端发来的加密签名
		String signature = request.getParameter("signature");
		// 时间戳
		String timestamp = request.getParameter("timestamp");
		// 随机数
		String nonce = request.getParameter("nonce");
		// 随机字符串
		String echostr = request.getParameter("echostr");
		
		PrintWriter out = response.getWriter();
		// 请求校验,若校验成功则原样返回echostr,表示接入成功,否则接入失败
		if (SignUtil.checkSignature(signature, timestamp, nonce)) {
			out.print(echostr);
		}
		out.close();
	
	}
Copy after login

Request verification tool class:

package com.sinaapp.wx.util;

import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
import java.util.Arrays;

import com.sinaapp.wx.config.ParameterConfig;

/**
 * 请求校验工具类
 */
public class SignUtil {
	/**
	 * 校验签名
	 * 
	 * @param signature 微信加密签名
	 * @param timestamp 时间
	 * @param nonce 随机字符串
	 * @return
	 */
	public static boolean checkSignature(String signature, String timestamp, String nonce) {
		String token = ParameterConfig.WX_TOKEN;
		String[] paramArr = new String[] { token, timestamp, nonce };
		Arrays.sort(paramArr);	// 对token、timestamp和nonce按字典排序

		// 将排序后的结果拼接成字符串
		StringBuilder sb = new StringBuilder(paramArr[0]);
		sb.append(paramArr[1]);
		sb.append(paramArr[2]);

		String cipherText = null;
		try {
			MessageDigest md = MessageDigest.getInstance("SHA-1");
			byte[] digest = md.digest(sb.toString().getBytes());	// 对接后的字符串进行sha1加密
			cipherText = byteToStr(digest);
		} catch (NoSuchAlgorithmException e) {
			e.printStackTrace();
		}
		
		// 将加密后的字符串与微信服务器发来的签名signature进行对比
		return cipherText != null ? cipherText.equals(signature.toUpperCase()) : false;
	}

	/**
	 * 将字节数组转换为十六进制字符
	 * 
	 * @param byteArray
	 * @return
	 */
	private static String byteToStr(byte[] byteArray) {
		String strDigest = "";
		for (int i = 0; i < byteArray.length; i++) {
			strDigest += byteToHexStr(byteArray[i]);
		}
		return strDigest;
	}

	/**
	 * 将单个字节转换为十六进制字符
	 * 
	 * @param mByte
	 * @return
	 */
	private static String byteToHexStr(byte mByte) {
		char[] Digit = { &#39;0&#39;, &#39;1&#39;, &#39;2&#39;, &#39;3&#39;, &#39;4&#39;, &#39;5&#39;, &#39;6&#39;, &#39;7&#39;, &#39;8&#39;, &#39;9&#39;, &#39;A&#39;, &#39;B&#39;, &#39;C&#39;, &#39;D&#39;, &#39;E&#39;, &#39;F&#39; };
		char[] tempArr = new char[2];
		tempArr[0] = Digit[(mByte >>> 4) & 0X0F];	// 取一个字节的高4位,然后获得其对应的十六进制字符
		tempArr[1] = Digit[mByte & 0X0F];	//  取一个字节的低4位,然后获得其对应的十六进制字符  

		return new String(tempArr);
		
	}
}
Copy after login

The value of String token = ParameterConfig.WX_TOKEN in the code must be consistent with the Token filled in above. Configure the servlet in web.xml:

  <servlet>
  	<servlet-name>coreServlet</servlet-name>
  	<servlet-class>com.sinaapp.wx.servlet.CoreServlet</servlet-class>
  </servlet>
  <servlet-mapping>
  	<servlet-name>coreServlet</servlet-name>
  	<url-pattern>/coreServlet</url-pattern>
  </servlet-mapping>
Copy after login

Then put it under the URL that can be accessed from the public network, and then fill in the access address of the servlet in the above in the URL. Then click the "Submit" button. If everything is successful, the following prompt message will appear:

How to become a developer in WeChat development

At this point we have successfully turned on the developer function of WeChat and can perform WeChat developed. We have obtained the AppID and AppSecret, both of which are used in WeChat payment.

Note:

The development document address of WeChat is: http://mp.weixin.qq.com/wiki/home/index.html

The documentation for opening WeChat developers is as follows:

How to become a developer in WeChat development

For more articles related to WeChat development and how to become a developer, please pay attention to the PHP Chinese website!

Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

PHP WeChat development: How to implement message encryption and decryption PHP WeChat development: How to implement message encryption and decryption May 13, 2023 am 11:40 AM

PHP is an open source scripting language that is widely used in web development and server-side programming, especially in WeChat development. Today, more and more companies and developers are starting to use PHP for WeChat development because it has become a truly easy-to-learn and easy-to-use development language. In WeChat development, message encryption and decryption are a very important issue because they involve data security. For messages without encryption and decryption methods, hackers can easily obtain the data, posing a threat to users.

Using PHP to develop WeChat mass messaging tools Using PHP to develop WeChat mass messaging tools May 13, 2023 pm 05:00 PM

With the popularity of WeChat, more and more companies are beginning to use it as a marketing tool. The WeChat group messaging function is one of the important means for enterprises to conduct WeChat marketing. However, if you only rely on manual sending, it is an extremely time-consuming and laborious task for marketers. Therefore, it is particularly important to develop a WeChat mass messaging tool. This article will introduce how to use PHP to develop WeChat mass messaging tools. 1. Preparation work To develop WeChat mass messaging tools, we need to master the following technical points: Basic knowledge of PHP WeChat public platform development Development tools: Sub

PHP WeChat development: How to implement user tag management PHP WeChat development: How to implement user tag management May 13, 2023 pm 04:31 PM

In the development of WeChat public accounts, user tag management is a very important function, which allows developers to better understand and manage their users. This article will introduce how to use PHP to implement the WeChat user tag management function. 1. Obtain the openid of the WeChat user. Before using the WeChat user tag management function, we first need to obtain the user's openid. In the development of WeChat public accounts, it is a common practice to obtain openid through user authorization. After the user authorization is completed, we can obtain the user through the following code

Steps to implement WeChat public account development using PHP Steps to implement WeChat public account development using PHP Jun 27, 2023 pm 12:26 PM

How to use PHP to develop WeChat public accounts WeChat public accounts have become an important channel for promotion and interaction for many companies, and PHP, as a commonly used Web language, can also be used to develop WeChat public accounts. This article will introduce the specific steps to use PHP to develop WeChat public accounts. Step 1: Obtain the developer account of the WeChat official account. Before starting the development of the WeChat official account, you need to apply for a developer account of the WeChat official account. For the specific registration process, please refer to the official website of WeChat public platform

PHP WeChat development: How to implement group message sending records PHP WeChat development: How to implement group message sending records May 13, 2023 pm 04:31 PM

As WeChat becomes an increasingly important communication tool in people's lives, its agile messaging function is quickly favored by a large number of enterprises and individuals. For enterprises, developing WeChat into a marketing platform has become a trend, and the importance of WeChat development has gradually become more prominent. Among them, the group sending function is even more widely used. So, as a PHP programmer, how to implement group message sending records? The following will give you a brief introduction. 1. Understand the development knowledge related to WeChat public accounts. Before understanding how to implement group message sending records, I

PHP WeChat development: How to implement customer service chat window management PHP WeChat development: How to implement customer service chat window management May 13, 2023 pm 05:51 PM

WeChat is currently one of the social platforms with the largest user base in the world. With the popularity of mobile Internet, more and more companies are beginning to realize the importance of WeChat marketing. When conducting WeChat marketing, customer service is a crucial part. In order to better manage the customer service chat window, we can use PHP language for WeChat development. 1. Introduction to PHP WeChat development PHP is an open source server-side scripting language that is widely used in the field of Web development. Combined with the development interface provided by WeChat public platform, we can use PHP language to conduct WeChat

PHP WeChat development: How to implement voting function PHP WeChat development: How to implement voting function May 14, 2023 am 11:21 AM

In the development of WeChat public accounts, the voting function is often used. The voting function is a great way for users to quickly participate in interactions, and it is also an important tool for holding events and surveying opinions. This article will introduce you how to use PHP to implement WeChat voting function. Obtain the authorization of the WeChat official account. First, you need to obtain the authorization of the WeChat official account. On the WeChat public platform, you need to configure the API address of the WeChat public account, the official account, and the token corresponding to the public account. In the process of our development using PHP language, we need to use the PH officially provided by WeChat

How to use PHP for WeChat development? How to use PHP for WeChat development? May 21, 2023 am 08:37 AM

With the development of the Internet and mobile smart devices, WeChat has become an indispensable part of the social and marketing fields. In this increasingly digital era, how to use PHP for WeChat development has become the focus of many developers. This article mainly introduces the relevant knowledge points on how to use PHP for WeChat development, as well as some of the tips and precautions. 1. Development environment preparation Before developing WeChat, you first need to prepare the corresponding development environment. Specifically, you need to install the PHP operating environment and the WeChat public platform

See all articles