Aujourd'hui, j'ai accidentellement ouvert le débogage de WeChat JSSDK et j'ai constaté que les informations de débogage ont toujours provoqué une erreur de signature. L'API «occasionnellement» n'a pas pris effet il y a deux jours, non pas parce que le code n'a pas été exécuté, mais parce que la signature n'est pas correcte! , c'est une erreur à 100% reproductible
Mais tant que le spa vient d'être rafraîchi ou ne saute pas au milieu après le chargement, la signature sera correcte.
Mais lorsque l'itinéraire change, après avoir signé la nouvelle page "Jump", nous avons rencontré une erreur de signature. Notre signature est évidemment correcte. Il est de même d'utiliser divers paramètres à l'outil de vérification de signature WeChat JS (http://mp.weixin.qq.com/debug/cgi-bin/sandbox?t=jsapisign) pour comparaison!
Une découverte majeure plus tard. . . en fait
Signez simplement une fois lors du chargement de la page d'entrée du spa, car l'URL signée par WeChat semble ne reconnaître que l'URL de la première page chargée par le spa. . . Le saut Window.Location.href est en fait assez similaire au chargement du spa
Je pensais que si l'itinéraire était redirigé, je devrais utiliser la nouvelle URL pour démissionner, mais c'est précisément à cause de cela que j'ai fait une erreur dans la vérification de la signature. .
La solution est donc:
Signez simplement la première page chargée. Le saut à l'aide de l'interface utilisateur semble avoir simplement changé l'adresse. . Et la modification de cette adresse. . La signature de Wechat semble non reconnue. . Il a reconnu l'URL de la première page chargée.
Grâce à cet article, j'espère que cela peut aider les amis qui rencontrent ce problème. Merci pour votre soutien pour ce site Web!