Maison  >  Article  >  développement back-end  >  À propos des raisons et des solutions en cas d'échec de la vérification du jeton du compte public Thinkphp5 WeChat

À propos des raisons et des solutions en cas d'échec de la vérification du jeton du compte public Thinkphp5 WeChat

不言
不言original
2018-06-08 14:26:532046parcourir

L'article suivant vous propose un article sur les raisons et les solutions de l'échec de la vérification des jetons du compte public Thinkphp5 WeChat. Le contenu est assez bon, je vais donc le partager avec vous maintenant et le donner comme référence.

J'ai récemment démarré un projet WeChat. J'ai commencé à comprendre le développement de WeChat le mois dernier. Je vais démarrer le projet ce mois-ci, mais la configuration des informations du compte officiel WeChat a échoué. À cette fin, j'ai même écrit manuellement les enregistrements soumis via WeChat, tels que :

×tamp=1510210523&nonce=2414550015&signature=30b9eeb6b1134d0a53623375c48ca734c41facb5&echostr=686378691307372543 9

J'ai vu que les informations de vérification étaient correctes, la sortie echostr C'est exactement la même chose que ce qui a été soumis par get, mais une erreur se produira toujours. Je n’en peux plus et je n’ai pas réussi à le faire.

Faire du développement par vous-même est fondamentalement la voie à suivre. Je souffre toujours de cet écueil et je suis un peu insatisfait. Finalement, j'ai vérifié les logs et je l'ai fait petit à petit.

Voici comment j'ai résolu le problème :

1 Quelqu'un sur Internet a dit que l'en-tête devait être défini sur utf-. 8, et je l'ai également défini Non ;

2. Certaines personnes disent qu'il n'y a peut-être pas d'autorisation d'écriture de journal, ce qui rend les informations normales, mais le code de la page n'est pas normal. la console, je trouve que l'entête de la page affiche 500, Ma Dan, c'est une erreur de serveur.

On estime qu'une fois que Tencent aura déterminé votre code 500, cela ne continuera pas.

Après une dernière vérification, j'ai constaté que le répertoire des journaux de mon serveur n'avait pas suffisamment d'autorisations pour écrire le journal !

C'est la raison pour laquelle j'ai perdu de nombreuses heures.

Enfin, je partage le jeton de vérification du compte officiel WeChat avec tous les frères, en espérant que vous ne tomberez pas dans le piège.

$token='请填写你的公众号token';

$timestamp = $_GET[‘timestamp'];
$nonce = $_GET[‘nonce'];
$signature = $_GET[‘signature'];
$array = array($timestamp,$nonce,$token);
sort($array);

//2.将排序后的三个参数拼接后用sha1加密
$tmpstr = implode(”,$array);
$tmpstr = sha1($tmpstr);

//3. 将加密后的字符串与 signature 进行对比, 判断该请求是否来自微信
if($tmpstr == $signature)
{
echo $_GET[‘echostr'];
}
return false;

De plus, je voudrais rappeler à tous les frères qu'il serait préférable de configurer les informations de configuration sur le compte de test WeChat Même si vous faites une erreur, vous n'êtes pas obligé de scanner le. QR code à chaque fois, ce qui est fatiguant.

Ce qui précède représente l'intégralité du contenu de cet article. J'espère qu'il sera utile à l'étude de chacun. Pour plus de contenu connexe, veuillez faire attention au site Web PHP chinois !

Recommandations associées :

À propos de l'analyse du contrôleur ThinkPHP

Analyse du filigrane ThinkPHP et définition de la position du filigrane

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!

Déclaration:
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