私はOAuth passport-google戦略を実装しているアプリを持っています。 パスポート・ローカル戦略の実装を正しく実装するための問題があります。[Passport-Local]認証OKですがコールバックが失敗します - req.userが空です
ログの追加をデバッグしようとしましたが、私は、データベースにユーザーが見つかったところに行って、完了したメソッドが呼び出されることに気付きました。
_passport_Local-login
[0] all good { _id: 598d927ca4287c9102fd5339,
[0] __v: 0,
[0] local:
[0] { password:
'$2a$08$r8B93TxFD0TLynw7jOAIXeFUR6OLWGDxQSiSmE62f0CRN1F3wE4ie',
[0] email: '[email protected]' },
[0] isAdmin: false }
[0] _authRoutes_req is: null
[0] events.js:182
[0] throw er; // Unhandled 'error' event
[0] ^
[0]
[0] TypeError: res.redirect is not a function
[0] at app.post.passport.authenticate
(/Users/dev/workspace/React/Projects/oerk_v3/server/routes/authRoutes.js:9:8)
[0] at Strategy.strategy.success (/Users/dev/workspace/React/Projects/oerk_v3/server/node_modules/passport/lib/middleware/authenticate.js:201:18)
[0] at verified (/Users/dev/workspace/React/Projects/oerk_v3/server/node_modules/passport-local/lib/strategy.js:83:10)
[0] at /Users/dev/workspace/React/Projects/oerk_v3/server/services/passport.js:68:15
[0] at model.Query.<anonymous> (/Users/dev/workspace/React/Projects/oerk_v3/server/node_modules/mongoose/lib/model.js:3822:16)
[0] at /Users/dev/workspace/React/Projects/oerk_v3/server/node_modules/kareem/index.js:273:21
[0] at /Users/dev/workspace/React/Projects/oerk_v3/server/node_modules/kareem/index.js:131:16
[0] at _combinedTickCallback (internal/process/next_tick.js:95:7)
[0] at process._tickCallback (internal/process/next_tick.js:161:9)
[1] Proxy error: Could not proxy request /auth/login from localhost:3000 to http://localhost:5000.
[1] See https://nodejs.org/api/errors.html#errors_common_system_errors for more information (ECONNRESET).
私は正常に動作し、Googleの戦略のと同じプロセスを以下おりますので、私は問題を把握することはできません:私は次のエラーを取得するその時点で
。
あなたはここに私のコードを見つけることができます。
サーバーサイド: - Index.jsがルート
である - ルート: https://github.com/yassinej/oerkv3/blob/master/routes/authRoutes.js
をアドバイスは大歓迎です。 乾杯。 Yassine。
http://passportjs.org/docs#custom-callback(これは2番目の引数がユーザーオブジェクトである理由についても説明しています) – robertklep
リンクをありがとうございました。 '' passport.authenticate( 'ローカル申し込み' { '/' \t \t \t \t \t failureRedirect::: '/ログイン' \t \t \t successRedirect})Iは、カスタム・コールバックとユーザデフォルトリダイレクトを除去しました –