Как написать по новому стандарту es6?

381
23 ноября 2017, 05:06

Не могу разобраться в рендеринг, застрял в авторизации, что как пишу я так не рендерит, выходит ошибка

router.post('/', async (ctx) => { 
    await passport.authenticate('local', (err, user) => { 
        if(user === false){ 
            console.log(err); 
            ctx.render('/', {title: 'Авторизация', message: ctx.body}); 
        } else { 
            const payload = { 
                id: user.id, 
                displayName: user.displayName, 
                email: user.email 
            }; 
            const token = jwt.sign(payload, jwtsecret); //здесь создается JWT 
            ctx.body = {user: user.displayName, token: 'JWT ' + token}; 
            ctx.redirect('/user'); 
        } 
    }) (ctx) 
});

(node:6516) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): Error: Can't set headers after they are sent. (node:6516) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js p rocess with a non-zero exit code.

Использовал данный пример

Answer 1

Вот правильный ответ

router.post('/', async (ctx) => { 
    await passport.authenticate('local', async(err, user) => { 
        if(user === false){ 
            await ctx.render('login', {title: 'Авторизация', message: 'Неверный логин или пароль'}); 
        } else { 
            console.log(user); 
            const payload = { 
                id: user.id, 
                username: user.username, 
            }; 
            const token = jwt.sign(payload, jwtsecret); //здесь создается JWT 
            ctx.body = {user: user.username, token: 'JWT ' + token}; 
            console.log(ctx.body); 
            ctx.redirect('/user'); 
        } 
    }) (ctx) 
});

READ ALSO
Проверка 2 и более input на disabled

Проверка 2 и более input на disabled

Есть 2 инпута, в них вводятся значения, при верном значении input получает disabledНужна, проверка в реальном времени, если оба disabled, происходило...

320
Среднее значение параметра объекта

Среднее значение параметра объекта

Получаю Массив внутри объекты с данными

361
Пустой document.cookie в Chrome

Пустой document.cookie в Chrome

Есть код приложенный нижеВ Firefox как и в IE при первом обновлении страницы, как и при последующих будет выводится переданная мной строка

2127