例にジャンプしましょう。私は輸入、輸出のようないくつかの部分をスキップします。ExpressJS + JWT。認証データを取得する適切な方法は何ですか?
function getMyBooks(successCallback) {
db.query('SELECT * FROM book b WHERE b.id_user=?', [Auth.getLoggedUID()], function(rows) {
successCallback(rows);
});
}
私の質問:モデル/ book.jsと呼ばれるモデルでは、私はその機能を持っている、
router.get('/my-books', function(req, res) {
if(Auth.authenticated(req,res)) {
Book.getMyBooks(function(rows) {
response.operationSucceed(req, res, rows);
});
}
});
その後:
私は、コントローラと呼ばれるコントローラ/ 1の経路とbook.jsを持っていますAuth.getLoggedUID関数についてです。 私はJWT認証を持っていて、ペイロードにUIDを持っていると仮定しています(それは容認できますか?)、それを取り出す最良のオプションは何ですか?私は認証データが必要なすべての機能に毎回req
を渡すことを除いて、何かありますか?
私は関数内で関数を実行している可能性がありますが、req
の両方を渡してユーザーIDを取得する必要がありますか?このように:
function getBooks(req) {
getMyBooks(req);
getCriminalBooks(req);
getEvenOtherBooksByAuthor(req, authorId);
}
正に私はそれを好まない。 私の全体のコンセプトが間違っていて、別のことをしているはずですか? このようなシナリオで誰かが私に正しい方向を向けることができますか?