Laut den offiziellen Dokumenten und dem Fallcode sind die oben genannten drei Parameter erforderlich, und die oben genannten drei Parameter werden dann dynamisch abgerufen. Anschließend verwenden wir Java-Code, um die Erfassung gemäß den offiziellen Dokumenten von WeChat zu erreichen Die drei Parameter Zeitstempel, NonceStr und Signatur sind hier nur eine Hauptmethode zum Drucken und Ausgeben. In dieser Lektion wird die Übergabe dieser drei Parameter an die Webseite und der erfolgreiche Aufruf des WeChat-JSAPI nicht implementiert. Die nächste Lektion konzentriert sich auf die Erklärung. .
Zeichencode:
package com.test.util; import java.util.UUID; import java.util.Map; import java.util.HashMap; import java.util.Formatter; import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; import java.io.UnsupportedEncodingException; public class Sign { public static void main(String[] args) { String jsapi_ticket =JsapiTicketUtil.getJSApiTicket();; // 注意 URL 一定要动态获取,不能 hardcode String url = "http://www.vxzsk.com/xx/x.do";//url是你请求的一个action或者controller地址,并且方法直接跳转到使用jsapi的jsp界面 Map<String, String> ret = sign(jsapi_ticket, url); for (Map.Entry entry : ret.entrySet()) { System.out.println(entry.getKey() + ", " + entry.getValue()); } }; public static Map<String, String> sign(String jsapi_ticket, String url) { Map<String, String> ret = new HashMap<String, String>(); String nonce_str = create_nonce_str(); String timestamp = create_timestamp(); String string1; String signature = ""; //注意这里参数名必须全部小写,且必须有序 string1 = "jsapi_ticket=" + jsapi_ticket + "&noncestr=" + nonce_str + "×tamp=" + timestamp + "&url=" + url; System.out.println(string1); try { MessageDigest crypt = MessageDigest.getInstance("SHA-1"); crypt.reset(); crypt.update(string1.getBytes("UTF-8")); signature = byteToHex(crypt.digest()); } catch (NoSuchAlgorithmException e) { e.printStackTrace(); } catch (UnsupportedEncodingException e) { e.printStackTrace(); } ret.put("url", url); ret.put("jsapi_ticket", jsapi_ticket); ret.put("nonceStr", nonce_str); ret.put("timestamp", timestamp); ret.put("signature", signature); return ret; } private static String byteToHex(final byte[] hash) { Formatter formatter = new Formatter(); for (byte b : hash) { formatter.format("%02x", b); } String result = formatter.toString(); formatter.close(); return result; } private static String create_nonce_str() { return UUID.randomUUID().toString(); } private static String create_timestamp() { return Long.toString(System.currentTimeMillis() / 1000); } } Nach dem Login kopieren |
16 Die variable URL in der Hauptmethode ist eine von Ihnen angeforderte Aktion oder Controller-Adresse, und die Methode springt mit jsapi
direkt zur JSP-Schnittstelle, um die Tool-Klasse jsapi_ticket abzurufen Code:
Das obige ist der detaillierte Inhalt vonJava für die WeChat-Entwicklung, um WeChat-Zeitstempel, NonceStr und Signaturmethode zu erhalten. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!
Verwandte Etiketten:
Vorheriger Artikel:Ein Beispiel für das Ein- und Ausblenden des Menüs in der oberen rechten Ecke der Webseite auf der öffentlichen WeChat-Plattform
Nächster Artikel:WeChat-Entwicklungsmethode, um zu bestimmen, ob der aktuelle Client die angegebene js-Schnittstelle unterstützt
Erklärung dieser Website
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
Neueste Artikel des Autors
Aktuelle Ausgaben
Wie erstelle ich online einen QR-Code mit Parametern für das offizielle WeChat-Konto?
Aus 1970-01-01 08:00:00
0
0
0
Wie können öffentliche WeChat-Konten unbegrenzt gezielte Nachrichten senden?
Aus 1970-01-01 08:00:00
0
0
0
Wie lässt sich die Funktion der Massenplakateinlösung durch die Identifizierung des QR-Codes realisieren?
Aus 1970-01-01 08:00:00
0
0
0
Können QR-Code-Poster für WeChat-Dienstkonten automatisch generiert werden?
Aus 1970-01-01 08:00:00
0
0
0
verwandte Themen
Mehr>
Beliebte Empfehlungen
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
|