Verfahren Jede Anforderungsschnittstelle enthält ein Token zur Überprüfung Schlüsselwert: Zufallszahl + Zeitstempel + Salt DemoMini-Programm<Ansicht> <button bindtap="loadTokenData">Token-Anforderungsdaten übertragen</button> </Ansicht> Seite({ Daten: { }, beim Laden:Funktion(){ // diese._loadData(); }, //Token generieren setToken:Funktion(Rückruf){ // wx.setStorageSync('Token', "sfspx64w8x47w14x3zX4x4wf4") var das = dies; wx.Anfrage({ URL: „http://2021xcx-api.com/api/gettoken“, Methode: 'POST', Erfolg: Funktion (Res) { Konsole.log(Res.Daten); var Daten = res.Daten; wenn(Datencode==1){ //Aktualisieren Sie den neu erworbenen Token-Wert wx.setStorageSync('token', data.token); // Rückruffunktion ausführen callback&&callback() }anders{ das.setToken(); } } }) }, ladeToeknData:Funktion(){ var das = dies; wx.Anfrage({ URL: „http://2021xcx-api.com/api/orders“, Methode: 'POST', Kopfzeile: { 'Inhaltstyp': 'Anwendung/JSON', „Token“: wx.getStorageSync(„Token“) }, Erfolg: Funktion (Res) { var Daten = res.Daten; console.log(Daten) wenn(data.code==903){ // Token läuft ab, Anforderung zum erneuten Festlegen // Führen Sie eine Rückruffunktion aus und führen Sie diese Methode weiterhin aus, nachdem das Token erneut abgerufen wurde. das.setToken(das.loadTokenData) } } }) }, }) Backend-SchnittstelleRouting-Konfiguration <?php Route::post("api/orders", "api/index/getOrders"); //Zeichen Route::post("api/gettoken", "api/token/createToken"); Index.php <?php Namespace App\API\Controller; verwenden Sie app\api\controller\Token; verwenden Sie think\Cache; Klasse Index erweitert Token { öffentliche Funktion getOrders(Token $token){ $token->verifyToken(); $data['Bestellungen'] = [ 'id' => 1, 'Titel' => 'Apfel', 'Zeit' => Zeit() ]; echo json_encode($data); } } Token.php <?php Namespace App\API\Controller; verwenden Sie think\Controller; Klasse Token erweitert Controller { geschützt $returnParam = [ 'Code' => 1, 'msg' => 'Anfrage fehlgeschlagen' ]; /** * [verifyToken überprüft, ob der Token mitgeführt wird und existiert] * @return [Typ] [Beschreibung] */ öffentliche Funktion „verifyToken()“ { $token = Anfrage()->Header()['Token']; $isSetToken = cache($token); // dump($isSetToken); die; wenn(!$isSetToken){ $this->returnParam['code'] = 903; $this->returnParam['msg'] = "Token-Verifizierung fehlgeschlagen"; echo json_encode( $this->returnParam );die; } } /** * [createToken Token-Generierung] * Tipp: Benutzer-ID/Session_Kye/OpenID im Token aufzeichnen * @return [Typ] [Beschreibung] */ öffentliche Funktion createToken() { $randStr = rand(1,9999); $zeit = Zeit(); $Verkauf = "xixi2021"; // * Hier simulieren – Die WeChat-Schnittstelle muss den Sitzungsschlüssel und die OpenID nicht abrufen $tokenValue = [ 'uid' => 1, 'Sitzungsschlüssel' => '84848aasa', 'openid' => '20oxl65wc4d4s5x7hwc', 'Code' => 'sssaaeee' ]; $tokenKey = md5($randStr.$time.$sale); //Token-Daten zwischenspeichern cache($tokenKey, json_encode($tokenValue), 1); $returnParam = [ 'Code' => 1, 'Token' => $TokenSchlüssel ]; echo json_encode($returnParam); } } Dies ist das Ende dieses Artikels über die Generierung und Verifizierung von Miniprogramm-Token. Weitere relevante Inhalte zur Generierung und Verifizierung von Miniprogramm-Token finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, dass jeder 123WORDPRESS.COM in Zukunft unterstützen wird! Das könnte Sie auch interessieren:
|
<<: Informationen zum Debuggen von CSS-Cross-Browser-Style-Fehlern
>>: Detaillierte Anwendungsfälle von MySql Escape
Lassen Sie mich Ihnen ohne weitere Umschweife den...
1. Syntax TIMESTAMPDIFF(Einheit, Beginn, Ende); G...
Validierung des WeChat-Applets-Formulars. Zu Ihre...
Zusammenfassung: Analyse von zwei MySQL SQL-Anwei...
Wenn Sie unter Linux eine Anwendung herunterladen...
mysql-5.7.20-winx64.zipInstallationspaket ohne In...
Vorwort Die Master-Slave-Replikationsbeziehung vo...
Das <marquee>-Tag ist ein Tag, das paarweis...
Problembeschreibung Wie wir alle wissen, lautet d...
Ein Datensatz eines Online-MySQL-Transaktionsprob...
Relative Längeneinheiten em Beschreibung: Relative...
Meine Umgebung: 3 centos7.5 1804 Meister 192.168....
Inhaltsverzeichnis 1. Befehl 2. docker-compose.ym...
Überprüfen Sie, ob Ihr CUDA installiert ist Geben...
Wenn Benutzer an einem Backend-Verwaltungssystem ...