Heim >Backend-Entwicklung >PHP-Tutorial >Detaillierte Erläuterung des PHP-WeChat-Entwicklungszugriffsbeispiels

Detaillierte Erläuterung des PHP-WeChat-Entwicklungszugriffsbeispiels

墨辰丷
墨辰丷Original
2018-06-01 14:32:122501Durchsuche

Dieser Artikel stellt hauptsächlich den PHP-WeChat-Entwicklungszugriff im Detail vor und überprüft die Anfrage durch Überprüfung der Signatur.

WeChat ist meiner Meinung nach jeder damit vertraut den Lebensstil aller verändern. Mit diesem neuen Lebensstil halten immer mehr Mikrodienste Einzug in unser Leben. Wir können WeChat verwenden, um Kreditkartenrechnungen, Rückzahlungen und Zahlungen zu überprüfen. Auf einer kürzlich durchgeführten WeChat-Partnerkonferenz gab Tencent bekannt, dass das Dienstkonto Zahlungsfunktionen eröffnet und neun fortschrittliche Schnittstellen können Entwickler mit WeChat Fernseher, Kühlschränke, Waschmaschinen und sogar Reiskocher fernsteuern, außerdem können sie bequem Kinokarten und Mobiltelefone online kaufen Programme usw.

Basierend auf meinem persönlichen Verständnis werde ich nun kurz den ersten Schritt der WeChat-Entwicklung beschreiben, wie man eine Verbindung mit dem WeChat-Server herstellt.

Wenn Sie sich an der WeChat-Entwicklung beteiligen möchten, besteht der erste Schritt darin, ein offizielles WeChat-Konto zu beantragen. Offizielle Konten sind in Dienstkonten und Abonnementkonten unterteilt. Dienstkonten werden, wie der Name schon sagt, hauptsächlich zur Bereitstellung von Diensten für Benutzer verwendet. Ihre Funktionen sind leistungsstärker als Abonnementkonten, es gibt jedoch auch Unannehmlichkeiten Das Konto darf nur eine Gruppennachricht pro Monat senden. Abonnementkonten werden hauptsächlich zur Bereitstellung von Informationen und Informationen verwendet. Ihre Funktionen sind schwächer als die von Dienstkonten, sie können jedoch täglich eine Gruppennachricht senden. Die folgenden Beschreibungen basieren alle auf Dienstkonten.

Nach der Beantragung des öffentlichen WeChat-Kontos benötigen wir außerdem einen externen WEB-Server, um die Dateninteraktion mit dem WeChat-Server zu ermöglichen. Ich werde nicht näher auf diesen Schritt eingehen. Sowohl Baidu als auch Sina bieten diesen Service an.

Melden Sie sich bei der öffentlichen WeChat-Plattform an und wählen Sie „Funktion“ -> „Erweiterte Funktion“ im Navigationsmenü auf der linken Seite. WeChat bietet uns zwei „Bearbeitungsmodus“ und einen „Entwicklungsmodus“. Diese beiden Modi schließen sich gegenseitig aus, d. h. wenn der „Bearbeitungsmodus“ aktiviert ist, muss der „Entwicklungsmodus“ deaktiviert werden und umgekehrt. „Bearbeitungsmodus“ wird auch Narrenmodus genannt. Entwickler können direkt auf der Plattform Menüs definieren und automatische Antworten und andere Funktionen einstellen. Die hier definierte Menüfunktion ist relativ schwach. Nachdem der Benutzer auf das benutzerdefinierte Menü geklickt hat, kann er nur auf eine Nachricht antworten oder eine Webseite öffnen. Wenn Sie andere Aktionen basierend auf dem vom Benutzer angeklickten Menü ausführen müssen der „Entwicklungsmodus“.

Voraussetzung für die Nutzung des „Entwicklungsmodus“ ist, dass Sie sich als Entwickler bewerben müssen.

Im ersten Schritt müssen Sie die URL angeben, um die WeChat-Serverdaten zu empfangen, und Sie müssen außerdem ein TOKEN angeben (das vom Entwickler beliebig ausgefüllt und zum Generieren eines verwendet werden kann Unterschrift) zur Überprüfung beim Zugriff.

Der zweite Schritt besteht darin, die Gültigkeit der von Ihnen angegebenen URL zu überprüfen. Der WeChat-Server sendet eine GET-Anfrage an die von Ihnen angegebene URL.

Der Entwickler verifiziert die Anfrage durch Überprüfung der Signatur. Wenn bestätigt wird, dass diese GET-Anfrage vom WeChat-Server stammt, geben Sie bitte den Inhalt des Echostr-Parameters unverändert zurück. Dann wird der Zugriff wirksam und Sie werden erfolgreich zum Entwickler, andernfalls schlägt der Zugriff fehl.

Der PHP-Inspektionscode lautet wie folgt.

<?php

  $wechatObj = new wechatCallbackAPI();
  $wechatObj->valid(); 


  class wechatCallbackAPI {

    private $token = "WEIXIN";

    private $appId = "APPID";

    private $appSecret = "APPSECRET";
    
    private function checkSignature() {
      $signature = $_GET["signature"];
      $timestamp = $_GET["timestamp"];
      $nonce = $_GET["nonce"];  
          
      $tmpArr = array($this->token, $timestamp, $nonce);
      sort($tmpArr);
      $tmpStr = implode($tmpArr);
      $tmpStr = sha1($tmpStr);
      
      if($tmpStr == $signature) {
        return true;
      } else {
        return false;
      }
    }

    public function valid() {
      $echoStr = $_GET["echostr"];
      
      //valid signature, option
      if($this->checkSignature()){
        echo $echoStr;
        exit;
      }
    }
  }
?>

Zusammenfassung: Das Obige ist der gesamte Inhalt dieses Artikels, ich hoffe, dass er für das Studium aller hilfreich sein wird.

Verwandte Empfehlungen:

Detaillierte Erläuterung der anonymen PHP-Funktionen und Vorsichtsmaßnahmen

Anmelde-, Registrierungs- und Passwortänderungsfunktionen implementiert von PHP

Verwendung der Callback-Funktion call_user_func_array in PHP


Das obige ist der detaillierte Inhalt vonDetaillierte Erläuterung des PHP-WeChat-Entwicklungszugriffsbeispiels. 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