0
私はリアクションフロントエンドがAPI呼び出し専用の高速サーバーに接続しています。私は認証にパスポートを使用していますが、いくつか問題があります。私はFacebookのための戦略を設定している。私はFacebookを使用してログインすることができます、シリアル化メソッドが呼び出され、ユーザーがDBに追加され、戦略コールバックメソッドでreq.userオブジェクトを見ることができますが、reqを取得できません。この時点以降のユーザーオブジェクト。助言がありますか?私からPassportJsユーザー未定義フロントエンドExpress/MongoDBバックエンドに反応する
App.js
let express = require('express');
let router = express.Router();
let passport = require('passport');
router.get('/login/facebook', passport.authenticate('facebook', {scope: ["email"]}));
router.get('/facebook/return',
passport.authenticate('facebook', { failureRedirect: '/' }),
(req, res) => {
res.redirect('http://localhost:3000');
});
router.get('/logout',
passport.authenticate('facebook', { failureRedirect: '/' }),
(req, res) => {
req.logout();
res.redirect('http://localhost:3000');
});
module.exports = router;
Auth.js
let express = require('express');
let router = express.Router();
let passport = require('passport');
router.get('/login/facebook', passport.authenticate('facebook', {scope: ["email"]}));
router.get('/facebook/return',
passport.authenticate('facebook', { failureRedirect: '/' }),
(req, res) => {
res.redirect('http://localhost:3000');
});
router.get('/logout',
passport.authenticate('facebook', { failureRedirect: '/' }),
(req, res) => {
req.logout();
res.redirect('http://localhost:3000');
});
module.exports = router;
Species.js
let express = require("express");
let router = express.Router();
let Species = require("../models/species").Species;
router.get('/',
(req, res, next) => {
console.log(req.user);
Species.find({}).exec((err, species) => {
if(err) return next(err);
res.json(species);
});
});
module.exports = router;
私は素晴らしい提案があります。まず[ask]を確認してください。特に[mcve]部分。 – bennygenel
支援を提供するためにコードを参照する必要があります。 –