nodejs、mongoose、mongodb、expressjs のセットアップがあれば、特定のリクエストを検証するパーミッション/セキュリティ関連のルートがあります。例えば:
permissionUtils.checkStudentWritePermissions = function(req, res, next){
//load this student from the mongoose db
//ensure the current user has permission to update this student
}
server.put("/api/student/:studentId/enroll",
permissionUtils.checkStudentWritePermissions, function(req, res, next){
//load student from the database, validate the changes
//update student in mongodb, send new version back to user
});
ミドルウェアは、現在のユーザーがあらゆる場合に学生を更新する権利を持っていることを保証するので便利です。(コードの再利用など) どちらの例でも、mongodb から学生をロードしていることに気付くでしょう。この二重読み込みを回避するための受け入れられたパターンはありますか? ある種のリクエスト サイクル キャッシュまたはモデルを渡すための巧妙な方法はありますか?