Maison > interface Web > js tutoriel > le corps du texte

Comment implémenter l'enregistrement de connexion et la vérification des jetons à l'aide de vue

亚连
Libérer: 2018-06-20 17:04:48
original
5526 Les gens l'ont consulté

Dans la page unique de Vue, nous pouvons surveiller l'objet route, faire correspondre les informations qu'il contient pour décider s'il faut vérifier le jeton, puis définir les comportements ultérieurs. Ce qui suit est un exemple de code pour partager avec vous les fonctions d'enregistrement de connexion Vue et de vérification des jetons. Les amis qui en ont besoin peuvent s'y référer

Dans la plupart des sites Web, l'enregistrement de connexion est réalisé en combinant les cookies de stockage local, localStorage et request. -jetons de vérification du temps, etc. technologie. Pour certaines pages fonctionnelles, il tentera d'obtenir le jeton dans le stockage local pour jugement. S'il existe, vous pouvez entrer, sinon il accédera à la page de connexion ou affichera la boîte de connexion.

Dans la page unique de Vue, nous pouvons surveiller l'objet route, faire correspondre les informations qu'il contient pour décider s'il faut vérifier le jeton, puis définir les comportements ultérieurs.

Le code d'implémentation spécifique est le suivant :

1 Utilisez le hook router.beforeEach pour déterminer si la route cible contient des méta-informations pertinentes

// router.js
import Vue from 'vue'
import VueRouter from 'vue-router'
Vue.use(VueRouter)
const routes = [
 {
  path: '/',
  component: require('./views/Home'),
  meta: {
   requiresAuth: true
  }
 },
]
const router = new VueRouter({
 routes: routes
})
router.beforeEach((to, from, next) => {
 let token = window.localStorage.getItem('token') 
 if (to.matched.some(record => record.meta.requiresAuth) && (!token || token === null)) {
  next({
   path: '/login',
   query: { redirect: to.fullPath }
  })
 } else {
  next()
 }
})
export default router
Copier après la connexion
.

2. Regarder l'objet itinéraire. Le principe est le même que ci-dessus.

<script>
  // App.vue
  export default {
    watch:{
      &#39;$route&#39;:function(to,from){
        let token = window.localStorage.getItem(&#39;token&#39;);
          if (to.matched.some(record => record.meta.requiresAuth) && (!token || token === null)) {
            next({
             path: &#39;/login&#39;,
             query: { redirect: to.fullPath }
            })
          } else {
           next()
          }
      }
    }
  }
</script>
Copier après la connexion

J'ai compilé ce qui précède pour vous, j'espère que cela vous sera utile à l'avenir.

Articles connexes :

Comment obtenir un effet d'aperçu en JS

Utilisez three.js pour créer un projet

Comment utiliser la syntaxe ES6 dans Node (tutoriel détaillé)

Introduction détaillée à l'utilisation de cet objet en js

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
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!