Java調(diào)用微信客服消息實(shí)現(xiàn)發(fā)貨通知的方法詳解
本文實(shí)例講述了Java調(diào)用微信客服消息實(shí)現(xiàn)發(fā)貨通知的方法。分享給大家供大家參考,具體如下:
微信文檔地址:https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140547&token=&lang=zh_CN
個(gè)人說明:這是一個(gè)樣例,微信客戶消息有很多種,我現(xiàn)在用的是公眾號(hào)發(fā)送消息。樣子如下圖。
說明:下面開始代碼部分了。
1.首先看微信文檔。這里才是我們需要的
這里是說發(fā)消息要POST請(qǐng)求這個(gè)接口:https://api.weixin.qq.com/cgi-bin/message/custom/send?access_token=ACCESS_TOKEN
但是這個(gè)接口后面需要帶一個(gè)參數(shù)ACCESS_TOKEN。
下面先獲取ACCESS_TOKEN。
//這里的WeixinUtil.getAccess_token()方法,放在下面。 String aToken = WeixinUtil.getAccess_token("https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid="+你的appId+"&secret="+你的appSecret+""); System.out.println("這里是aToken"+aToken); String[] tokenOne = aToken.split(":"); String[] token = tokenOne[1].split(","); char [] stringArr = token[0].toCharArray(); String token3 = "" ; for(int i=1;i<stringArr.length-1;i++){ String token2 = String.valueOf(stringArr[i]); token3 += token2; } System.out.println("這里是ACCESS_TOKEN"+token3);
獲取到一個(gè)ACCESS_TOKEN,然后就可以加入到微信請(qǐng)求中
//這里就是一個(gè)微信請(qǐng)求,首先用String放著 String tokenurl = "https://api.weixin.qq.com/cgi-bin/message/custom/send?access_token="+token3; //首先確定是發(fā)送文字消息,還是圖文消息,這里是手寫的json數(shù)據(jù). //發(fā)送文字消息,無連接 String json = "{\"touser\":\"這里是Openid\",\"msgtype\":\"text\",\"text\":{\"content\":\"Hello World\"}}"; //圖文消息,有鏈接連接 String jsonpic = "{\"touser\":\""+這里是Openid+"\","+ "\"msgtype\":\"news\",\"news\":{\"articles\":["+ "{\"title\":\"HelloWorld\",\"url\":\"要跳轉(zhuǎn)的鏈接"}]}}"; System.out.println("這里是json"+jsonpic); //請(qǐng)求方法,然后放回OK 成功,否則錯(cuò)誤。這里這個(gè)請(qǐng)求方法在下邊 String xmlStr = HttpKit.post(tokenurl,jsonpic); System.out.println("這里是xmlStr"+xmlStr);
說明:WeixinUtil.getAccess_token()
方法。我放整個(gè)類了。改包名,只需要導(dǎo)入兩個(gè)包
package com.uitrs.weixin; import java.net.HttpURLConnection; import java.net.URL; public class WeixinUtil { //傳入U(xiǎn)RL public static String getAccess_token(String url) { String accessToken = null; try { URL urlGet = new URL(url); HttpURLConnection http = (HttpURLConnection) urlGet .openConnection(); http.setRequestMethod("GET"); // 必須是get方式請(qǐng)求 http.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); http.setDoOutput(true); http.setDoInput(true); System.setProperty("sun.net.client.defaultConnectTimeout", "30000");// 連接超時(shí)30秒 System.setProperty("sun.net.client.defaultReadTimeout", "30000"); // 讀取超時(shí)30秒 http.connect(); InputStream is = http.getInputStream(); int size = is.available(); byte[] jsonBytes = new byte[size]; is.read(jsonBytes); accessToken = new String(jsonBytes, "UTF-8"); System.out.println(accessToken); is.close(); } catch (Exception e) { e.printStackTrace(); } return accessToken; } }
說明:HttpKit.post();
方法,我放整個(gè)類了。這個(gè)類我用的是導(dǎo)入
import com.jfinal.kit.HttpKit;
這個(gè)包到了jfinal的包。出自下面三個(gè)包當(dāng)中,具體我也不清楚了
1.jfinal-2.2.jar (應(yīng)該是這個(gè))
2.jfinal-2.2-bin-with-src.jar
3.jfinal-weixin-1.7-bin-with-src.jar
更多關(guān)于java算法相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Java字符與字符串操作技巧總結(jié)》、《Java數(shù)組操作技巧總結(jié)》、《Java數(shù)學(xué)運(yùn)算技巧總結(jié)》、《Java編碼操作技巧總結(jié)》和《Java數(shù)據(jù)結(jié)構(gòu)與算法教程》
希望本文所述對(duì)大家java程序設(shè)計(jì)有所幫助。
- 微信java開發(fā)之實(shí)現(xiàn)微信主動(dòng)推送消息
- java微信開發(fā)第二步 獲取消息和回復(fù)消息
- Java開發(fā)微信公眾號(hào)接收和被動(dòng)回復(fù)普通消息
- java微信企業(yè)號(hào)開發(fā)之發(fā)送消息(文本、圖片、語音)
- JAVA實(shí)現(xiàn) springMVC方式的微信接入、實(shí)現(xiàn)消息自動(dòng)回復(fù)實(shí)例
- 微信支付java版本之JSAPI支付+發(fā)送模板消息
- java微信開發(fā)API第二步 獲取和回復(fù)消息
- Java微信公眾平臺(tái)開發(fā)(5) 文本及圖文消息回復(fù)的實(shí)現(xiàn)
- Java微信公眾平臺(tái)開發(fā)(2) 微信服務(wù)器post消息體的接收
- Java微信公眾平臺(tái)開發(fā)(3) 接收消息的分類及實(shí)體的創(chuàng)建
- Java微信公眾平臺(tái)開發(fā)(4) 回復(fù)消息的分類及實(shí)體的創(chuàng)建
相關(guān)文章
Java中內(nèi)存異常StackOverflowError與OutOfMemoryError詳解
這篇文章主要介紹了 Java中內(nèi)存異常StackOverflowError與OutOfMemoryError詳解的相關(guān)資料,需要的朋友可以參考下2017-03-03使用Springboot實(shí)現(xiàn)word在線編輯保存
PageOffice目前支持的Web編程語言及架構(gòu)有:Java(JSP、SSH、MVC等),ASP.NET(C#、VB.NET、MVC、Razor等),PHP,ASP,本篇文章就帶你使用Springboot整合PageOffice實(shí)現(xiàn)word在線編輯保存2021-08-08Javaweb使用thymeleaf局部刷新結(jié)合Layui插件實(shí)現(xiàn)Html分頁
本文主要介紹了Javaweb使用thymeleaf局部刷新結(jié)合Layui插件實(shí)現(xiàn)Html分頁,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-10-10ByteArrayInputStream簡(jiǎn)介和使用_動(dòng)力節(jié)點(diǎn)Java學(xué)院整理
ByteArrayInputStream 是字節(jié)數(shù)組輸入流。它繼承于InputStream。這篇文章主要介紹了ByteArrayInputStream簡(jiǎn)介和使用_動(dòng)力節(jié)點(diǎn)Java學(xué)院整理,需要的朋友可以參考下2017-05-05Java中獲取時(shí)間戳的三種方式對(duì)比實(shí)現(xiàn)
這篇文章主要介紹了Java中獲取時(shí)間戳的三種方式對(duì)比實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-01-01解決IDEA項(xiàng)目external libraries依賴包消失的問題
有時(shí)候電腦重啟后,再打開IDEA上的項(xiàng)目時(shí)會(huì)出現(xiàn)external libraries目錄下的依賴包都消失了的情況,只剩下了一個(gè)JDK的包,本文給大家介紹了解決IDEA項(xiàng)目external libraries依賴包消失的辦法,需要的朋友可以參考下2024-02-02