Node.js はパスポートローカルを使用して Postman で正常に実行されますが、Vue.js フロントエンドで問題が発生します
P粉170858678
2023-08-30 12:18:47
<p>ユーザー認証にパスポートローカルを使用しています。ログインしているユーザーを取得しようとすると、postman では正常に機能しますが、「データを取得するには、最初にログインする必要があります」と設定したエラー メッセージが表示されます。ユーザーは vue js から正常にログインできますが、ログインしているユーザーを取得しようとすると、エラー メッセージが表示されます。 </p>
<p>これが私のルートです: </p>
<pre class="brush:php;toolbar:false;">router.get('/jobs', auth ,async(req, res) => {
const jobs = await Job.find({}).sort({
作成時刻: -1
})
console.log(req.user)//これは postman では機能しますが、vue js ではエラーが発生します
res.send(ジョブ)
})</pre>
<p>私は cors を使用しており、オリジンを指定し、資格情報を true に設定しています。 </p>
<p>これは私のフロントエンドリクエストです: </p>
<pre class="brush:php;toolbar:false;">try{
const res = await axios.get('http://localhost:3000/jobs', {
withCredentials : true
})
this.jobs = await res.data
console.log(this.jobs) // ログインしているにもかかわらず、エラー メッセージが表示されます
}キャッチ(エラー) {
if(error.response) {
this.message = error.response.data
}
}</pre></p>
トークンを使用する場合は、次のようにリクエストでトークンを渡す必要があります:
リーリーPostman で送信したヘッダーを表示します。
編集: 画像を追加しました