Heim  >  Artikel  >  Java  >  Ein Beispiel dafür, wie Java WeChat-Kundendienstnachrichten aufruft, um Lieferbenachrichtigungen abzuschließen (Bild)

Ein Beispiel dafür, wie Java WeChat-Kundendienstnachrichten aufruft, um Lieferbenachrichtigungen abzuschließen (Bild)

黄舟
黄舟Original
2017-08-20 09:12:482919Durchsuche

In diesem Artikel wird hauptsächlich die Methode zum Aufrufen von WeChat-Kundendienstnachrichten zur Implementierung von Zustellbenachrichtigungen vorgestellt. Außerdem werden die Prinzipien, Aufrufmethoden und zugehörigen Vorsichtsmaßnahmen von Java für WeChat-Schnittstellenaufrufe detailliert analysiert Bedarf kann darauf verweisen

Das Beispiel in diesem Artikel beschreibt, wie Java WeChat-Kundendienstnachrichten aufruft, um Zustellbenachrichtigungen zu implementieren. Teilen Sie es als Referenz mit allen. Die Details lauten wie folgt:

Persönliche Anmerkung: Dies ist ein Beispiel. Es gibt viele Arten von WeChat-Kundennachrichten. Ich verwende derzeit das offizielle Konto, um Nachrichten zu senden. Es sieht aus wie auf dem Bild unten.

Hinweis: Der Codeteil beginnt unten.

1. Lesen Sie zuerst die WeChat-Dokumentation. Hier ist, was wir brauchen

Hier können Sie eine Nachricht an POST senden und diese Schnittstelle anfordern: https://api.weixin.qq.com/cgi-bin/message/ custom/send?access_token=ACCESS_TOKEN

Aber diese Schnittstelle muss einen Parameter ACCESS_TOKEN haben.

Holen Sie sich zuerst 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);

Besorgen Sie sich ein ACCESS_TOKEN und fügen Sie es dann zur WeChat-Anfrage hinzu


//这里就是一个微信请求,首先用String放着
String tokenurl = "https://api.weixin.qq.com/cgi-bin/message/custom/send?access_token="+token3;
//首先确定是发送文字消息,还是图文消息,这里是手写的json数据.
//发送文字消息,无连接
String json = "{\"touser\":\"这里是Openid\",\"msgtype\":\"text\",\"text\":{\"content\":\"Hello World\"}}";
//图文消息,有链接连接
String jsonpic = "{\"touser\":\""+这里是Openid+"\","+ "\"msgtype\":\"news\",\"news\":{\"articles\":["+ "{\"title\":\"HelloWorld\",\"url\":\"要跳转的链接"}]}}";
System.out.println("这里是json"+jsonpic);
//请求方法,然后放回OK 成功,否则错误。这里这个请求方法在下边
String xmlStr = HttpKit.post(tokenurl,jsonpic);
System.out.println("这里是xmlStr"+xmlStr);

Anleitung: WeixinUtil.getAccess_token()Methode. Ich habe die ganze Klasse gestellt. Um den Paketnamen zu ändern, müssen Sie nur zwei Pakete importieren


package com.uitrs.weixin;
import java.net.HttpURLConnection;
import java.net.URL;
public class WeixinUtil {
  //传入URL
    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方式请求
        http.setRequestProperty("Content-Type",
            "application/x-www-form-urlencoded");
        http.setDoOutput(true);
        http.setDoInput(true);
        System.setProperty("sun.net.client.defaultConnectTimeout", "30000");// 连接超时30秒
        System.setProperty("sun.net.client.defaultReadTimeout", "30000"); // 读取超时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;
    }
}

Hinweis: Ich habe die gesamte Klasse in die Methode HttpKit.post(); eingefügt. Ich verwende diese Klasse, um


import com.jfinal.kit.HttpKit;

dieses Paket in das jfinal-Paket zu importieren. Es kommt aus den folgenden drei Paketen, ich kenne die Details nicht

1.jfinal-2.2.jar (sollte das sein)
2.jfinal-2.2-bin-with-src.jar
3.jfinal-weixin-1.7-bin-with-src.jar

Das obige ist der detaillierte Inhalt vonEin Beispiel dafür, wie Java WeChat-Kundendienstnachrichten aufruft, um Lieferbenachrichtigungen abzuschließen (Bild). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn