recherche

Maison  >  Questions et réponses  >  le corps du texte

Node.js s'exécute avec succès dans Postman en utilisant le passeport local mais rencontre des problèmes dans l'interface Vue.js

<p>J'utilise le passeport local pour l'authentification des utilisateurs. Lorsque j'essaie d'obtenir l'utilisateur connecté, cela fonctionne bien dans Postman mais il affiche le message d'erreur que j'ai défini "Vous devez d'abord être connecté pour obtenir les données". Mes utilisateurs peuvent se connecter avec succès depuis vue js, mais lorsque j'essaie d'obtenir l'utilisateur connecté, mon message d'erreur s'affiche. </p> <p>Voici mon itinéraire : </p> <pre class="brush:php;toolbar:false;">router.get('/jobs', auth,async(req, res) => { const jobs = attendre Job.find({}).sort({ créé à : -1 }) console.log(req.user)//Cela fonctionne dans postman mais donne une erreur dans vue js res.send (travaux) })</pré> <p>J'utilise cors, je spécifie l'origine et je définis les informations d'identification sur true. </p> <p>Voici ma requête frontend : </p> <pre class="brush:php;toolbar:false;">essayer{ const res = attendre axios.get('http://localhost:3000/jobs', { withCredentials : vrai }) this.jobs = attendre res.data console.log(this.jobs) // Même si je suis connecté, il m'affiche le message d'erreur }attraper(erreur) { si (erreur. réponse) { ce.message = erreur.response.data } }</pre></p>
P粉170858678P粉170858678461 Il y a quelques jours422

répondre à tous(1)je répondrai

  • P粉197639753

    P粉1976397532023-08-31 11:05:53

    Si vous utilisez un token, vous devez le transmettre dans la requête, comme ceci :

    const config = {
          withCredentials : true,
          headers: { 
            Token: user.value.token 
          },
        };
    
         try{ 
              const res = await axios.get('http://localhost:3000/jobs', config)
    
              this.jobs = await res.data
              console.log(this.jobs) // 即使我已经登录,它也会给我错误消息
            }catch(error) {
               if(error.response) {
                   this.message = error.response.data
               }
            }
    

    Affichez vos en-têtes envoyés dans Postman.

    Edit : image ajoutée

    répondre
    0
  • Annulerrépondre