私の悪い英語を申し訳ありません!
MEAN Stack
(MongoDB + Express.js + Angular.js + Node.js)とpassport.js
とJWT
(jsonwebtoken
とexpress-jwt
)を使用して認証を作成します。
私は何をしたいですか?
ログインルートと登録ルートは、nunjucksを使用してhtmlをレンダリングし、成功した場合は公開ディレクトリに配置してindex.htmlファイルをレンダリングします。
P.S .:これは正しい方法ですか?
私の質問は何ですか?
誰も私に言うことができます、これを行うための技術?
(https://thinkster.io/mean-stack-tutorialに基づいて)私のコード:このコードで
平均スタックログイン/メインアプリケーションとは別のページに登録
app.get('/', function(req,res){
if (!req.user)
res.redirect('/about')
else
res.render('index')
});
app.get('/login',function(req, res) {
res.render('auth/login', {
title: 'Login'
});
});
app.post('/', function(req, res, next) {
if (!req.body.login || !req.body.password) {
return res.status(400).json({ message: 'Please fill out all fields' });
}
passport.authenticate('local', function(err, user, info) {
if (err) { return next(err); }
if (user) { return res.json({ token: user.generateJWT()});
/*generateJWT form user model code returns jwt.sign({}) using jsonwebtoken:
var jwt = require('jsonwebtoken');
*/
} else { return res.status(401).json(info);}
})(req, res, next);
});
は、ログインが成功であれば、我々は、生成されたトークンを返します。 index.htmlをレンダリングするにはどうすればよいですか?生成されたトークンで何ができますか? このダミーの質問を申し訳ありません、私はまだjwtを学んでいます。ありがとう
これはサーバー側のノードコードが正しいですか? –
それは正しいと思う、私はちょうど走ろうとした。間違いがありますか?お返事ありがとうございます – Ramil