我正在使用node.js並表示構建一個簡單的服務器,其中CSRF正通過快速框架進行實施。內置CSRF保護的node.js服務器,移動應用程序如何接收CSRF令牌?
app.use(express.csrf());
app.use(function(req, res, next){
res.locals.token = req.session._csrf;
res.locals.year = new Date().getFullYear();
next();
});
的連接CSRF中間件自動生成req.session._csrf令牌,而這個函數映射它res.locals.token所以這將是可從EJS的模板。這適用於Web應用程序。
但是,當涉及到我的Android的移動應用程序,例如登錄,只發送用戶名和密碼沒有CSRF令牌將導致服務器拒絕請求。
如前面的代碼僅適用於網頁模板,所以我的問題是如何獲得這個令牌在支持Android應用程序
最佳RGDS 十一
我的例子中的移動應用程序是原生移動應用程序,但正如您所建議的那樣,也許原生移動應用程序沒有CSRF的問題,CSRF適用於基於Web /瀏覽器的應用程序。打開/關閉CSRF是一個好主意,所以如果我們發現請求來自本地移動應用程序,我們可以關閉CSRF,對吧? – user824624
正確。你只需要確保黑客無法輕易關閉它 – AndyD