Enregistrez une itération de SSO de la plateforme de développement low-code - la connexion du mini programme intégré dans le WEB et la connexion par code scan WeChat côté PC
L'applet WeChat intègre la connexion WEB et la connexion par analyse de code WeChat côté PC. Ce n'est pas difficile, mais cela implique de nombreuses modifications, y compris ma plate-forme BAAS, ma plate-forme de développement low-code et l'applet WeChat. Faites une note spéciale.
1. Connexion WEB intégrée à l'applet WeChat.
Problème résolu : intégrez le WEB dans le mini programme WeChat, cliquez sur le bouton de connexion natif du mini programme et réalisez la connexion du mini programme. Comment permettre au WEB intégré de se connecter également en même temps ?
Idée:
1. Pour les pages intégrées au WEB et nécessitant une connexion pour fonctionner.
Lorsque vous ouvrez cette page, déterminez si vous êtes connecté. Si vous n'êtes pas connecté, la page native s'affiche et un bouton de connexion apparaît.
Si le mini-programme a été connecté, la page WEB intégrée s'affiche et les informations de connexion (y compris le jeton et les informations utilisateur) sont transmises via l'URL. Une fois que la page WEB a reçu les paramètres, le jeton est envoyé à l'interface de vérification JWT. de la plate-forme BAAS pour la vérification, et que la vérification est réussie (aucune vérification n'est également requise), effectuez les processus liés à la connexion.
2. Lorsque vous n'êtes pas connecté, cliquez sur le bouton de connexion pour vous connecter au mini-programme et actualiser la page.
2. Scannez le code QR du mini programme sur PC pour vous connecter
Idée:
1. Générez un code QR sur PC
Générer un code QR : Ajoutez le paramètre de scène après le chemin de la page dédiée du mini programme nécessaire pour vous connecter en scannant le code QR sur le PC. Les paramètres de scène sont générés de manière aléatoire. Appelez ensuite l'interface spéciale de génération de codes QR de mini-programme de la plateforme BAAS pour générer l'url de ce mini-programme dans un code QR de mini-programme.
Stocker le code QR : stockez localement l’URL du code QR généré et il sera valide pendant 1 heure.
Lorsque le code QR apparaît : lorsque le mode de connexion est ouvert, la méthode de connexion par défaut consiste à scanner le code WeChat pour vous connecter. Déterminez s’il existe localement un code QR de connexion valide et, sinon, générez-en un.
2. Scannez le code WeChat et connectez-vous
Scannez le code QR pour vous connecter avec WeChat, et ouvrez la page dédiée au scan du code QR pour vous connecter côté PC du mini programme, avec les paramètres de scène.
Cliquez pour vous connecter. Ceci est un peu différent de la connexion normale. Vous devez envoyer les paramètres de scène à l'interface dédiée à la connexion au petit programme de la plateforme BAAS.
La plate-forme BAAS a apporté quelques modifications à l'interface de connexion du petit programme : ajoutez le paramètre de scène à la sortie json finale et stockez les données de connexion à afficher dans Redis (convertissez-les en chaîne puis stockez-les) avant de sortir les données.
Après vous être connecté au mini-programme, un message de connexion réussie s'affiche. Et le bouton « Quitter le mini programme » s'affiche. Cliquez sur ce bouton pour quitter le mini programme (cela permet d'éviter que le mini programme ne se ferme et que le bouton « Connexion » n'apparaisse la prochaine fois que vous scannerez le code QR pour vous connecter).
3. Connexion automatique sur PC
Une fois que le code QR de connexion apparaît sur le PC, celui-ci commence à interroger une interface islogin dédiée, une fois toutes les 5 secondes (trop rapide et inutile). Avec scène de paramètres. Si l'interface renvoie faux, demandez à nouveau après 5 secondes. Si le retour n'est pas faux mais que les informations de connexion, arrêtez l'interrogation, récupérez le jeton des informations de connexion et envoyez-le à l'interface de vérification JWT de la plateforme BAAS pour vérification. vérification, le processus de connexion est exécuté.
Cette interface est nouvelle dans cette itération. Il détermine s'il existe des données correspondantes dans Redis en fonction de la scène. Sinon, renvoyez false. Si c'est le cas, récupérez les données correspondantes dans redis, convertissez-les en json, puis revenez. Avant de revenir, supprimez les données correspondantes dans redis.