2016-11-09 14 views
1

bellとhapi-auth-cookieを使ってauth戦略を作成しました。しかし、セッションを設定しようとすると、request.auth.sessionは未定義です。誰かが私が間違っている場所を見つけ出すのを助けることができますか?なぜrequest.auth.sessionは未定義ですか?

マイルート:

module.exports = [ 
    { 
    method: 'GET', 
    path: '/create-an-account', 
    config: { 
     auth: { 
     strategy: 'auth0', 
     mode: 'try' 
     } 
    }, 
    handler: function(request, reply) { 
     var credentials = request.auth.credentials; 
     request.auth.session.set(credentials); 
     return reply.view('create-an-account'); 
    } 
    } 
] 

マイ認証戦略:

exports.register = function (server, options, next) { 
    server.register([Bell, Cookie], function (err) { 

    server.auth.strategy('auth0', 'bell', { 
     provider: 'auth0', 
     config: { 
      domain: process.env.AUTH0_CLIENT_DOMAIN, 
     }, 
     password: 'cookie_encryption_password_secure', 
     clientId: process.env.AUTH0_CLIENT_ID, 
     clientSecret: process.env.AUTH0_CLIENT_SECRET, 
     isSecure: false  // For developing locally 
    }); 

    server.auth.strategy('session', 'cookie', { 
     password: 'cookie_encryption_password_secure', 
     cookie: 'sid', 
     redirectTo: '/create-an-account', 
     redirectOnTry: false, 
     isSecure: false 
    }); 
    }); 
    return next(); 
}; 

答えて

1

我々は、我々のプロジェクトの一つに少し前、この問題を持っていました。彼らは長いrequest.auth.session.set(credentials);

を使用するようHAPI-のauth-cookieがそのドキュメントを変更しているここでは、代わりにrequest.cookieAuth.set()にその行を変更した場合、それが動作するはずlink to the commit

です。オンラインの例の多くは、最初の例を見逃した古い例を使用しているようです。

これもまた、別の答えでピックアップされました>request.auth.session.set(user_info) not working HapiJS

関連する問題