suchen

Heim  >  Fragen und Antworten  >  Hauptteil

Node.js läuft erfolgreich in Postman mit Passport-Local, weist jedoch Probleme im Vue.js-Frontend auf

<p>Ich verwende Passport-Local für die Benutzerauthentifizierung. Wenn ich versuche, den angemeldeten Benutzer abzurufen, funktioniert es in Postman einwandfrei, aber es wird die von mir festgelegte Fehlermeldung angezeigt: „Sie müssen zuerst angemeldet sein, um die Daten zu erhalten“. Meine Benutzer können sich erfolgreich über vue js anmelden, aber wenn ich versuche, den angemeldeten Benutzer abzurufen, wird meine Fehlermeldung angezeigt. </p> <p>Das ist meine Route: </p> <pre class="brush:php;toolbar:false;">router.get('/jobs', auth ,async(req, res) => { const jobs = waiting Job.find({}).sort({ erstellt um: -1 }) console.log(req.user)//Dies funktioniert in Postman, gibt aber einen Fehler in Vue js aus res.send(jobs) })</pre> <p>Ich verwende cors, gebe origin an und setze die Anmeldeinformationen auf true. </p> <p>Dies ist meine Frontend-Anfrage: </p> <pre class="brush:php;toolbar:false;">try{ const res = waiting axios.get('http://localhost:3000/jobs', { withCredentials: wahr }) this.jobs = warte auf res.data console.log(this.jobs) // Obwohl ich angemeldet bin, wird mir die Fehlermeldung angezeigt }catch(error) { if(error.response) { this.message = error.response.data } }</pre></p>
P粉170858678P粉170858678461 Tage vor421

Antworte allen(1)Ich werde antworten

  • P粉197639753

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

    如果您使用令牌,您需要在请求中传递它,就像这样:

    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
               }
            }
    

    在Postman中查看您发送的标题。

    编辑:添加了图片

    Antwort
    0
  • StornierenAntwort