中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何使用Java開發微信公眾號

發布時間:2021-05-25 15:24:56 來源:億速云 閱讀:281 作者:Leah 欄目:開發技術

這篇文章給大家介紹如何使用Java開發微信公眾號,內容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。

首先必須要有一個個人微信公眾號

個人微信公眾號相關的接口權限有限,不過用于個人學習體驗一下足夠了,如圖:

如何使用Java開發微信公眾號

然后進入微信公眾后臺,點擊基本配置,按照如下操作(點擊啟用,相當于設置請求url為自己后臺的):

如何使用Java開發微信公眾號

設置服務器URL、令牌、消息加解密密鑰(這個可以使用自動生成的):

如何使用Java開發微信公眾號

服務器URL至關重要,我在這里設置為我自己的域名http://www.youcongtech.com/wx-api。

這個wx-api就是后面對應的接口(比如我發送某個關鍵字,返回對應的信息)。
token可以設置復雜點。

后臺路由代碼

package com.blog.springboot.controller;

import java.io.IOException;
import java.io.PrintWriter;
import java.io.UnsupportedEncodingException;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import com.blog.springboot.wx.service.WxService;
import com.blog.springboot.wx.util.SignUtil;

import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;

@RestController
@RequestMapping("/wx_public_api")
@Api(tags = { "微信公眾號api" }, description = "微信公眾號api")
public class WxPublicApiController extends AbstractController{

	@Autowired
	private WxService wxService;
	
	
       /**
        * 微信公眾平臺服務器配置驗證
        * @param request
        * @param response
        */
	   @GetMapping
	   @ApiOperation("微信公眾平臺服務器配置驗證")
	   public void validate(HttpServletRequest request, HttpServletResponse response) {
	        // 微信加密簽名,signature結合了開發者填寫的token參數和請求中的timestamp參數、nonce參數。
	        String signature = request.getParameter("signature");
	        // 時間戳
	        String timestamp = request.getParameter("timestamp");
	        // 隨機數
	        String nonce = request.getParameter("nonce");
	        // 隨機字符串
	        String echostr = request.getParameter("echostr");

	        PrintWriter out = null;
	        try {
	            out = response.getWriter();
	            // 通過檢驗signature對請求進行校驗,若校驗成功則原樣返回echostr,否則接入失敗
	            if (SignUtil.checkSignature(signature, timestamp, nonce)) {
	                out.print(echostr);
	            }
	        } catch (IOException e) {
	            e.printStackTrace();
	            logger.error(e.getMessage());
	            
	        } finally {
	            
	        	out.close();
	            out = null;
	        }
	    }

     /**
      * 關注推送消息
      * @param request
      * @param response
      */
	 @PostMapping
	 @ApiOperation("關注推送消息")
	 public void about(HttpServletRequest request, HttpServletResponse response) {
	        try {
	            request.setCharacterEncoding("UTF-8");
	        } catch (UnsupportedEncodingException e) {
	            e.printStackTrace();
	            logger.error(e.getMessage(),e);
	        }
	        response.setContentType("text/html;charset=UTF-8");

	        // 調用核心業務類接收消息、處理消息
	        String respMessage = wxService.newMessageRequest(request);

	        // 響應消息
	        PrintWriter out = null;
	        try {
	            out = response.getWriter();
	            out.print(respMessage);
	        } catch (IOException e) {
	            e.printStackTrace();
	            logger.error(e.getMessage(),e);
	        } finally {
	            out.close();
	            out = null;
	        }
	    }
}

java基本數據類型有哪些

Java的基本數據類型分為:1、整數類型,用來表示整數的數據類型。2、浮點類型,用來表示小數的數據類型。3、字符類型,字符類型的關鍵字是“char”。4、布爾類型,是表示邏輯值的基本數據類型。

關于如何使用Java開發微信公眾號就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

台安县| 瑞安市| 珠海市| 客服| 乌拉特前旗| 伊宁市| 喀什市| 肇庆市| 饶阳县| 扎囊县| 洛浦县| 安徽省| 平塘县| 闽清县| 黄骅市| 荣昌县| 马边| 宣城市| 乐安县| 美姑县| 临猗县| 玉环县| 枣阳市| 桃江县| 荥阳市| 垦利县| 亳州市| 昭平县| 鄄城县| 涞源县| 吴堡县| 灵武市| 汝州市| 乌兰浩特市| 滁州市| 台北县| 新乡市| 乌拉特中旗| 巴林左旗| 佛学| 弋阳县|