私は明らかな答えがあると確信していますが、私は公式の文書やインターネット上のどこの解決策も見つけられませんでした。PassportJSでリクエストごとにユーザーを逆シリアル化する必要があるのはなぜですか?
Passport.js私たちは2つのメソッドを定義する必要があります.1つはシリアル化し、もう1つはユーザーセッションをデシリアライズします。 official documentationから
私が読み取る:
のみユーザIDが小さいセッション内に格納されたデータの量を維持しながら、セッションにシリアライズされます。後続の要求を受信すると、このIDは
私の最初の質問はWikipediaによると、用語シリアライズに関するreq.userに復元するユーザーを、見つけるために使用されます。
シリアライズデータ構造やオブジェクトの状態を格納できる形式に変換するプロセスです。
しかし、ユーザーがオブジェクトでありオブジェクトがオブジェクトであるため、Javascriptのみで作成された世界なぜ私たちはシリアライズしていますか?セッション全体でオブジェクト全体を保存することができますが、それを禁止するのは何ですか?
次に、デシリアライズとは、データベースとのやりとりのために、大量のリソースを消費するプロセスです。ですから、どのような要求でも、逆シリアル化を実行するのはなぜですか?私たちはそれを一度だけ行うことはできませんでした。
私はPassportJSについてよく読んでおり、ログインシステムを実装することができますが、私はこれらのあいまいな側面を明確にしたいと思います。 ありがとうございます。