2016-11-09 11 views
1

Я создал стратегию с использованием колокола, а другой - с помощью hapi-auth-cookie. Однако, когда я пытаюсь установить сеанс, 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'); 
    } 
    } 
] 

Мои Auth стратегии:

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

У нас был этот вопрос некоторое время назад на одном из наших проектов. Хапи-Auth-куки изменили свою документацию, чтобы они больше использовать request.auth.session.set(credentials);

Вот link to the commit

Если вы измените эту строку в request.cookieAuth.set() вместо этого он должен работать. Многие примеры онлайн, похоже, используют старый пример, который мы впервые пропустили.

Это также было отобрано в другом ответе SO здесь>request.auth.session.set(user_info) not working HapiJS

 Смежные вопросы

  • Нет связанных вопросов^_^