Comment utiliser la connexion autorisée de vue WeChat
Cette fois, je vais vous montrer comment utiliser la connexion autorisée avec vue WeChat. Quelles sont les précautions pour utiliser la connexion autorisée avec vue WeChat. Voici des cas pratiques, jetons un coup d'œil.
Contexte
Vue développement de la séparation front-end et back-end Autorisation WeChat
Scénario
L'application partage des produits sur WeChat Moments ou les partage avec des amis WeChat. Lorsque l'utilisateur clique sur la page, la connexion autorisée WeChat est effectuée pour obtenir des informations sur l'utilisateur.
Problème : Il n'y a pas de page d'accueil fixe de l'application h5. L'URL de redirection après autorisation a des paramètres et est très longue
Je suis stupide et j'ai essayé de nombreuses méthodes pendant le processus de développement. Piétiner le piège ne suffit pas à décrire mon humeur. est une expérience de sauter dans un puits.
1. Au début, le front-end demande une connexion WeChat, renvoie le code, puis utilise le code pour demander à l'interface backend d'obtenir le jeton. Plus tard, j'ai vu des blogs d'autres personnes disant que cette méthode n'était pas le cas. bien, et il est préférable de demander directement l'interface backend. Ensuite, l'arrière-plan renvoie l'URL pour le saut, donc la méthode la plus traditionnelle est adoptée, l'arrière-plan renvoie l'URL et le premier plan saute.
async ReturnGetCodeUrl() { let { data } = await getWxAuth({}); if (data.status == 200) { window.location.href = data.url; // 返回的结果 // redirect_uri重定向的url是后台的地址,后台就是可拿到code,获取token // https://open.weixin.qq.com/connect/oauth2/authorizeappid=xxxxxxxxxxxxxxxxxx&redirect_uri=***url***&response_type=code&scope=snsapi_userinfo&state=STATE&connect_redirect=1#wechat_redirect } },
2. À ce moment-là, un problème est survenu. L'autorisation WeChat a nécessité de nombreuses étapes. Finalement, il était pénible de revenir sur le lien lorsque j'ai cliqué pour la première fois. solution sur Internet. Utilisez le lien lui-même comme paramètre redirect_uri, qui ressemble probablement à ceci
https://open.weixin.qq.com/connect/oauth2/authorizeappid=xxxxxxxxxxxxxxxxxx&redirect_uri=*www .admin?http://www .xxx.com/h5/product*&response_type=code&scope=snsapi_userinfo&state=STATE&connect_redirect=1#wechat_redirect
Cependant, notre lien frontal ressemble à ceci, avec des paramètres et c'est super long, quoi ? WeChat n'acceptera peut-être pas que je sois si moche. /(ㄒoㄒ)/~~
http://www.xxx.com/h5/product?id=6RedfM5O4xeyl0AmOwmyipkHr8AQCv-hYXZVAIFTwDXOsWSKqgu3VaCmaKSerBnacvWuzO3Zwdf8y%2F2K2lvqkluV6Ane4 LCAKy PU2tPAPj%2FMF6F6xkzp27GqqpNya7HbdEA34qGQJvHIA9tlIMkeEWid1112b8oZuP3FQBwU%2F%2FMaSrovzQP6LlzWamyPnv0vMizu8uh0ItpJOQUV1m%2FtemF3U9KuHo8rXCw%3D
J'ai finalement abandonné ce plan
3. Réfléchissez à la façon de rediriger mon adresse frontale et d'obtenir le jeton
L'étape suivante est la méthode que j'utilise. maintenant, le bug est toujours là. Il y en a beaucoup. Laissez-moi d'abord partager ma méthode, je l'optimiserai plus tard ou j'apporterai des modifications s'il existe une meilleure méthode
Dans main.js, Routage Le global. hook détermine s'il existe un user_token localement, c'est-à-dire après l'autorisation WeChat. Pour le jeton renvoyé, s'il n'y a pas de jeton et que la route actuelle n'est pas l'auteur (une page spécifiquement conçue pour l'autorisation), alors enregistrez l'URL actuelle, telle que www .xxx.com/h5/product?id=6RedfM5O4xeyl0AmOwm, puis saisissez l'auteur. S'il existe un jeton localement, c'est-à-dire que l'utilisateur a préalablement autorisé le jeton et qu'il n'y a aucune information utilisateur dans vuex, alors j'obtiendrai les informations utilisateur et les enregistrerai dans vuex. Un problème rencontré ici est que le jeton expirera, alors je vais Supprimer le user_token local, window.localStorage.removeItem("user_token"); actualiser la page router.go(0);
router.beforeEach((to, from, next) => { // 第一次进入项目 let token = window.localStorage.getItem("user_token"); if (!token && to.path != "/author") { window.localStorage.setItem("beforeLoginUrl", to.fullPath); // 保存用户进入的url next("/author"); return false; } else if (token && !store.getters.userInfo) { //获取用户信息接口 store .dispatch("GetUserInfo", { user_token: token }) .catch(err => { window.localStorage.removeItem("user_token"); router.go(0); return false; }); } next(); });
Voici la logique de saisie de author.vue. Entrez l'auteur pour la première fois, www.xxxx.com/h5/author, déterminez si le lien a un paramètre de jeton, sinon, sautez. à l'autorisation WeChat, puis au backend. Il redirigera vers l'arrière et transportera le jeton, tel que : www.xxxx.com/h5/author?token=xxxxxxxxx&msg=200
<template> <p> 授权中。。。 </p> </template> <script> import { getWxAuth } from '@/service/getData' import { GetQueryString } from '@/utils/mixin'; export default { data() { return { token: '', }; }, computed: { }, created() { this.token = window.localStorage.getItem("user_token"); //判断当前的url有没有token参数,如果不存在那就跳转到微信授权的url //就是前面说的ReturnGetCodeUrl方法 if (!GetQueryString("token")) { this.ReturnGetCodeUrl(); } else { //如果有token,如http://www.xxxx.com/h5/author?token=xxxxxxxxx&msg=200,这里的参数就是后台重定向到前台http://www.xxxx.com/h5/author,并携带的参数。这样就可以拿到我们想要的token了 //判断一下后台返回的状态码msg,因为可能出现微信拿不到token的情况 let msg = GetQueryString("msg") if (msg = 200) { this.token = GetQueryString("token"); //存储token到本地 window.localStorage.setItem("user_token", this.token); //获取beforeLoginUrl,我们的前端页面 let url = window.localStorage.getItem("beforeLoginUrl"); //跳转 this.$router.push(url); //删除本地beforeLoginUrl removeLocalStorage("beforeLoginUrl"); }else{ //msg不是200的情况,可能跳到404的错误页面 } } }, methods: { async ReturnGetCodeUrl() { let { data } = await getWxAuth({}); if (data.status == 200) { window.location.href = data.url; } }, }, watch: {}, components: {}, mounted: function () {} } </script> <style lang='scss' scoped> </style>
Méthode GetQueryString
mixin.js
export const GetQueryString = name => { var url = new RegExp("(^|&)" + name + "=([^&]*)(&|$)"); var newUrl = window.location.search.substr(1).match(url); if (newUrl != null) { return unescape(newUrl[2]); } else { return false; } };
Je pense que vous maîtrisez la méthode après avoir lu le cas dans cet article. Pour des informations plus intéressantes, veuillez prêter attention aux autres articles connexes sur le site Web chinois de php !
Lecture recommandée :
Explication détaillée des étapes à suivre pour utiliser le composant intégré select de Vue
Éviter le nouveau rendu lors de l'utilisation de React
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!

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Certains joueurs rencontrent un problème étrange sur PS4 ou PS5 au lancement. Par exemple, cela peut provoquer une détresse lorsque leur connexion au PlayStation Network échoue, mais que leur connexion Internet fonctionne correctement. Vous pouvez rencontrer des erreurs lors de la saisie de vos informations de connexion et ne pas pouvoir rejoindre le chat PSParty. Si vous rencontrez un problème similaire, ce guide peut vous aider à le résoudre. À côté de PlayStationNetworkSign-in, vous verrez le message d’erreur « AnErrorHaveAreAre » et il dira « Échec ». D'autres paramètres tels que l'obtention de l'adresse IP, la connexion Internet et la vitesse de connexion ont été réussis. Alors, quel pourrait être le problème ici ? je te donnerai un travail

L'erreur AADSTS7000112 peut vous empêcher de vous connecter à l'application à l'aide de votre compte Microsoft, ce qui vous occasionnera des désagréments. Cet article vous fournira des solutions pour vous aider à résoudre ce problème et à restaurer une expérience de connexion normale. Connexion : Désolé, vous rencontrez des difficultés pour vous connecter. AADSTS7000112 : Application désactivée. Heureusement, vous pouvez corriger l'erreur en suivant quelques suggestions simples. Qu'est-ce que le code d'erreur AADSTS7000112 ? Le code d'erreur AADSTS7000112 indique un problème de connexion à Azure Active Directory de Microsoft. Généralement, cela peut être dû au blocage de l'application Microsoft qui tente de se connecter.

PyCharm est un environnement de développement intégré (IDE) Python très populaire. Il fournit une multitude de fonctions et d'outils pour rendre le développement Python plus efficace et plus pratique. Cet article vous présentera les méthodes de fonctionnement de base de PyCharm et fournira des exemples de code spécifiques pour aider les lecteurs à démarrer rapidement et à maîtriser l'utilisation de l'outil. 1. Téléchargez et installez PyCharm Tout d'abord, nous devons nous rendre sur le site officiel de PyCharm (https://www.jetbrains.com/pyc

sudo (exécution du superutilisateur) est une commande clé dans les systèmes Linux et Unix qui permet aux utilisateurs ordinaires d'exécuter des commandes spécifiques avec les privilèges root. La fonction de sudo se reflète principalement dans les aspects suivants : Fournir un contrôle des autorisations : sudo réalise un contrôle strict sur les ressources système et les opérations sensibles en autorisant les utilisateurs à obtenir temporairement les autorisations de superutilisateur. Les utilisateurs ordinaires ne peuvent obtenir des privilèges temporaires via sudo qu'en cas de besoin et n'ont pas besoin de se connecter en permanence en tant que superutilisateur. Sécurité améliorée : en utilisant sudo, vous pouvez éviter d'utiliser le compte root lors des opérations de routine. L'utilisation du compte root pour toutes les opérations peut entraîner des dommages inattendus au système, car toute opération incorrecte ou imprudente bénéficiera de toutes les autorisations. et

Comment se connecter à l'adresse e-mail d'Enterprise WeChat ? Vous pouvez vous connecter à l'adresse e-mail dans l'application Enterprise WeChat, mais la plupart des utilisateurs ne savent pas comment se connecter à l'adresse e-mail. Voici ensuite le didacticiel graphique sur la façon de se connecter. à l'adresse e-mail d'Enterprise WeChat fournie par l'éditeur pour les utilisateurs intéressés. Venez jeter un œil ! Didacticiel d'utilisation d'Enterprise WeChat Comment se connecter à la messagerie Enterprise WeChat 1. Ouvrez d'abord l'application Enterprise WeChat, accédez au [Workbench] en bas de la page principale et cliquez pour accéder à la zone spéciale 2. Puis dans le Workbench ; zone, sélectionnez le service [Enterprise Mailbox] ; 3. Accédez ensuite à la page de la fonction de messagerie d'entreprise, cliquez sur [Lier] ou [Modifier l'e-mail] en bas. 4. Enfin, saisissez [Compte QQ] et [Mot de passe] sur la page ; indiqué ci-dessous pour vous connecter à l'e-mail.

Étapes de fonctionnement et précautions de LinuxDeploy LinuxDeploy est un outil puissant qui peut aider les utilisateurs à déployer rapidement diverses distributions Linux sur des appareils Android, permettant aux utilisateurs de découvrir un système Linux complet sur leurs appareils mobiles. Cet article présentera en détail les étapes de fonctionnement et les précautions de LinuxDeploy et fournira des exemples de code spécifiques pour aider les lecteurs à mieux utiliser cet outil. Étapes de l'opération : Installer LinuxDeploy : Tout d'abord, installez
![La connexion à GeForce Experience se bloque [Réparer]](https://img.php.cn/upload/article/000/887/227/171084420790568.png?x-oss-process=image/resize,m_fill,h_207,w_330)
Cet article vous guidera pour résoudre le problème de crash de connexion GeForceExperience sous Windows 11/10. Généralement, cela peut être dû à des connexions réseau instables, à un cache DNS corrompu, à des pilotes de carte graphique obsolètes ou corrompus, etc. Correction de l'écran noir de connexion GeForceExperience Avant de commencer, assurez-vous de redémarrer votre connexion Internet et votre ordinateur. Parfois, le problème peut simplement être dû à un problème temporaire. Si vous rencontrez toujours un problème d'écran noir de connexion à NVIDIA GeForce Experience, pensez à suivre les suggestions suivantes : Vérifiez votre connexion Internet Basculez vers une autre connexion Internet Désactivez votre

Vraisemblablement, de nombreux utilisateurs ont plusieurs ordinateurs inutilisés à la maison et ont complètement oublié le mot de passe de mise sous tension car ils n'ont pas été utilisés depuis longtemps. Ils aimeraient donc savoir quoi faire s'ils oublient le mot de passe ? Alors jetons un coup d’œil ensemble. Que faire si vous oubliez d'appuyer sur F2 pour le mot de passe de démarrage Win10 ? 1. Appuyez sur le bouton d'alimentation de l'ordinateur, puis appuyez sur F2 lorsque vous allumez l'ordinateur (différentes marques d'ordinateurs ont des boutons différents pour accéder au BIOS). 2. Dans l'interface du BIOS, recherchez l'option de sécurité (l'emplacement peut être différent selon les marques d'ordinateurs). Habituellement dans le menu des paramètres en haut. 3. Recherchez ensuite l’option SupervisorPassword et cliquez dessus. 4. À ce stade, l'utilisateur peut voir son mot de passe, et en même temps trouver Activé à côté et le basculer sur Dis.
