2017-02-21 17 views
0

У меня есть конечная точка GET, но я не уверен, как это назвать. Я всегда получаю недопустимый токен csrf. Моя конечная точка POST работает отлично. У меня нет никаких проблем. У меня только проблема с конечной точкой GET.Защита CSRF в методах GET с использованием модуля csurf

const csrf = require('csurf'); 

router.route('/sessioncount') 
    .get(csrf({ ignoreMethods: [] }), (req, res, next) => { 
    sess = req.session; 
    if (sess.authenticated) { 
     if (sess.views) { 
     sess.views++; 
     res.setHeader('Content-Type', 'text/html'); 
     res.write('<p>Session views: ' + sess.views + '</p>'); 
     res.end(); 
     } else { 
     sess.views = 1; 
     res.end('Welcome, you are logged in!'); 
     } 
    } else { 
     res.setHeader('Content-Type', 'text/html'); 
     res.write('<p>You are not allowed to view this page. Please <a href="/api/form">log in</a></p>'); 
     res.end(); 
    } 
    }) 

Я звоню это так, но я предполагаю, что это только

http://localhost:31337/api/sessioncount?csrf=qudszjrT-mQ5uu4qXrQXI7C_NJYlXXUIdKB0 
http://localhost:31337/api/sessioncount?_csrf=qudszjrT-mQ5uu4qXrQXI7C_NJYlXXUIdKB0 
http://localhost:31337/api/sessioncount?csrfToken=qudszjrT-mQ5uu4qXrQXI7C_NJYlXXUIdKB0 

ответ

0

Я получил это работает, изменяя этот

// const csrfProtection = csrf({ cookie: true }); 
const csrfProtection = csrf(); 
Смежные вопросы