Maison > cadre php > PensezPHP > le corps du texte

Que faire si le jeton thinkphp échoue

藏色散人
Libérer: 2022-12-06 09:50:31
original
2098 Les gens l'ont consulté

Solution à l'échec du jeton thinkphp : 1. Ouvrez le code de vérification du jeton de l'applet WeChat ; 2. Effacez la zone de cache avant de générer "echostr", c'est-à-dire placez le code "ob_clean();" problème. Problème d’échec.

Que faire si le jeton thinkphp échoue

L'environnement d'exploitation de ce tutoriel : système Windows 7, ThinkPHP version 5, ordinateur Dell G3.

Que dois-je faire si le jeton thinkphp échoue ?

Solution au problème de l'échec de la vérification du jeton du programme ThinkPHP WeChat Mini

Aujourd'hui, je découvre les programmes WeChat Mini et j'ai demandé un compte Mini Program. Les étapes de candidature sont les suivantes : Développement du programme WeChat Mini - Enregistrer un compte.

Pendant le processus de développement et de configuration, vous devez remplir les informations du serveur et vérifier le jeton, mais la vérification échoue toujours. Après avoir lu les méthodes de traitement d'autres personnes, j'ai résumé la méthode et l'ai partagée.

Solution : avant de générer "echostr", videz la zone de cache, c'est-à-dire placez le code "ob_clean();" avant echo.

Explication officielle : ob_clean()  Cette fonction est utilisée pour supprimer le contenu dans le tampon de sortie ;

Le code de vérification est le suivant :

/**
 * 微信小程序token校验
 * @return bool
 */
public function wxtoken()
{
    $signature = input('get.signature');
    $timestamp = input('get.timestamp');
    $nonce = input('get.nonce');
    $token = '1234567';
    $tmpArr = array($token, $timestamp, $nonce);
    sort($tmpArr, SORT_STRING);
    $tmpStr = implode($tmpArr);
    $tmpStr = sha1($tmpStr);
    if($tmpStr == $signature){
        ob_clean();
        echo input('get.echostr');
    }else{
        return false;
    }
}
Copier après la connexion

L'explication officielle de WeChat sur la vérification du jeton est : Le développeur vérifie la signature du demander une vérification (les méthodes de vérification sont répertoriées ci-dessous). S'il est confirmé que cette requête GET provient du serveur WeChat, veuillez renvoyer le contenu du paramètre echostr tel quel, alors l'accès prendra effet et vous deviendrez développeur avec succès, sinon l'accès échouera.

Le processus de cryptage/vérification est le suivant :

1. Triez les trois paramètres token, timestamp et nonce par ordre lexicographique

2. Fusionnez les trois chaînes de paramètres en une seule chaîne pour le cryptage sha1

3. Développeur Le crypté la chaîne peut être comparée à la signature pour indiquer que la demande provient de WeChat

Apprentissage recommandé : "thinkPHP Video Tutorial"

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal