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粉170858678
2023-08-30 12:18:47
<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>
Si vous utilisez un token, vous devez le transmettre dans la requête, comme ceci :
Affichez vos en-têtes envoyés dans Postman.
Edit : image ajoutée