Saya mencoba untuk bekerja melalui pengaturan aplikasi nodejs menggunakan express 4.x. Setelah tersandung melalui masalah penghapusan middleware, saya akhirnya berhasil.
Namun, ada beberapa pesan peringatan di baris kode berikut:
app.use(session({secret: '<mysecret>'})
peringatan ini adalah:
Sun, 29 Jun 2014 12:45:10 GMT express-session deprecated pass resave option; default value will change at lib\config\express.js:55:11
Sun, 29 Jun 2014 12:45:10 GMT express-session deprecated pass saveUninitialized option; default value will change at lib\config\express.js:55:11
dalam dokumentasi, nilai default untuk resave dan saveUninitialized adalah true.
jadi, mengubah kode untuk dibaca
app.use(session({secret: '<mysecret>',
saveUninitialized: true,
resave: true}));
singkirkan peringatan itu.
Jadi, untuk langsung ke inti pertanyaannya:
mengapa saya harus meneruskan nilai-nilai ini jika itu adalah nilai default, dan mengapa saya tidak harus meneruskan di opsi lain?
resave
dansaveUnitialized
yang boolean yang defaulttrue
di 1.7.2: github.com/expressjs/sessionsaveUninitialized
. Saya menyalin apa yang Anda posting dan menghabiskan 45 menit mencoba mencari tahu apa peringatan itu tidak akan hilang. Kemudian saya menyadari ada kesalahan ejaan. lol: DJawaban:
Seperti yang diperingatkan, nilai default akan berubah sehingga mereka ingin memastikan bahwa dengan menyetel nilai secara eksplisit sekarang, Anda tidak akan mengalami perilaku tak terduga saat default berubah (dalam waktu dekat).
sumber
Saya menemukan masalah berguna:
https://github.com/expressjs/session/issues/56
sumber
false
( github.com/expressjs/session#resave , github.com/expressjs/session#saveuninitialized ).Saya tidak memiliki cukup perwakilan untuk menambahkan ini sebagai komentar. Saya menambahkan ini untuk nilai default saya dari jawaban Ben.
sumber
sumber