在通過connect-mongo v.4.6.0將我的 MongoDB 連接到 Node.js 以存盤會話資訊時,在Chrome (v.106.0.5249.121) 中測驗我的應用程式時,瀏覽器向我發送“無法決議密文物件! ”。相反,在 Brave 和 Edge 中,所有作品和會話資料都被正確加密和存盤。這是我的 MongoStore 和 Express 會話配置:
const MongoStore = require('connect-mongo');
const mongoStore = MongoStore.create({
mongoUrl: urlDBLocale,
crypto: { // this parameter causes "Unable to parse ciphertext object" in Chrome
secret: process.env.mdbssecret,
},
touchAfter: 24 * 3600
});
mongoStore.on("error", err=>console.log('MongoDB Session Storage error:', err));
const sessionOptions = {
cookie: {
httpOnly: true,
secure: false,
maxAge: 3600000
},
name: 'whatever',
saveUninitialized: false,
secret: process.env.sessionSecret,
store: mongoStore,
resave: false
};
app.use(session(sessionOptions));
雖然上述內容在 Chrome 中根本不起作用,但 Brave 和 Edge 沒有給出錯誤,在這里您可以看到當我分別嘗試使用這兩個瀏覽器時會話已正確存盤在 MongoDB 中:
> db.sessions.find()
{ "_id" : "tAD7alup3KP_8qzkBUkAQtgplM3QYjO_", "expires" : ISODate("2022-11-03T17:54:03.169Z"), "lastModified" : ISODate("2022-11-03T16:54:03.169Z"), "session" : "MIICkwSCAThtV0dUNGZKcGYrVFlPeURDbDlTT3VqcjdFQWswRURYdm1TQXFTL1RQT3dZVzBmYU5PajRnblU0bDNuZDB3T08xTFhhbHlncnZsWUwrMHZvdWEyUzJOYUd3Wm5pUnYyOUR6SnFhODAwTXFLN3NFWG5PandKdkZmQTlvZUZZRURUVUJaeDRiYWN4T3psbXFWaFFFUlNEZzNjMFNIdnJmTXhYc2xidTkwNlovcXlTaEVGaWppRml5cEFMNlFHS2ViM1A5RElVZi9HNHRrNkVDcFpReVlGaWp1U2ZxbXNRZS9rd0NnclRua2QyYTRSTmxlT29vc1F4WUVvcnFzQzYxanJUVDVUV21laWhHTzdYeUx4VFU2ejZYZlhyNnRHMHJ4WUxQUFg3ZWdUWXYxdGlvK1JrOVVHM3Z3PT0EWHJ5VXFFM3k2MEFab2JEU0orWG9lMjZMM1NEeG5HVUxaQlc1Q001VGtSdHdmZGhLWGlaNmhUVUFicmcwRzUzTk53MGVlMXpkaXRnRlhtS1JwU1k5aTFnPT0EDPUOA18tvmYDuzHydQSBgO4uqYbtOWt3/nWokZk2iHwCV2/L0dTDpVoHEfvZmFLQ3xlEUV4213b8HeyCnAjnz03TAf8f1p3ZEbEu9JqpnsGmM7T6fiN/1O8hOwRzRDwFyJKcT/ PUUTiaDda55FjinqNn9imwrdVl4kMCmkfcxafgaJE/aaj9nznUeJ/eE7SBBCYIePm5C0f9mYS8jJV4MtJBFhKQ3VHZlBYSUFGbEdMUXV5SFpuMnJORnQwUWRGb0ZydHpseHRleWh6QWFwaVNjdVBNcTJ0M0pReEZKdzBQWXg3N255Vit3czdzMjU4ZGJxamxMZDc4dz09" }
{ "_id" : "pUX3QV5yLOEImcckJdUO1jir_tkAFPXF", "expires" : ISODate("2022-11-03T17:56:28.397Z"), "lastModified" : ISODate("2022-11-03T16:56:28.398Z"), "session" : "MIICkwSCAThpL0RGTjJwTXRxcGtVdTBycGNkRVhVajhRRzhqanV2aVhXZjlPQ1pWclhEYkgwTkZGdms0T0EwSGpJSmlrRUJqcWNkMTMzR3dzdGgzUlhza1JtZWdCSGZGUVFvSWRmdXU1T3lXZEJkUC90bEEvcStuTnhnOFNiek96MXRDLzF0Nmx0dlNkaTEvSmx2SlRDMzZHdGdlQXZSKzJTbEZBUjVFaHlaYXhjbklLWkpBcm01b3ZWbWJzMUNFSERPSVZZKzJrU0dLT2JlOGN0aXZRRUZsYTlOcHloZm1JSEZiZk80emdRenRZdVN4WFMwZlVIbnFpMTEvdW1UbkZjRk9NN3IxRWswVjV3RW1mUGFDUTJsZ0NCVWUzMXg4TVFFN1ZGVUt0eDFWWURlbDZWMlRJd2hDMlFRZitBPT0EWHBNKzBrQnZkZkF3dnhIZWxMTUxHNjNVTWZyMVEvME9VaDVJdW03TTJ6aVpGUWFJVE8vRUNaTXlqQ3NKSFFxSmw1ZGZkN1hmUDJLTFFSK2xmeVhPK0JnPT0EDIMy9uY8STWtjjUHuASBgPuj70V3HlFuaXEYk7HNYTGy6dIbrLhGkW5Ra3xTgekdMQeAdmB4xmmTnIu099LCkNeuSiZZvSLrxz6Oj39ZJXB5GTGlBVbpoEFc3Iaf12jPBhuX8KkXtHGV4y UsJw qg/BC0lzfAKMpa3iGjdLgo9vwobrN03MyEKRBUHSEyQLBBAS7AfNVrZPfHqmyGyO4g68BFh2cFprY0taekQzZ0Q4Tjd5MEcweHFwQ2dwMTJHb1dsSk04clRURnp5Rmhpc1o1WjlkQ0pyeVBTTVNhUCthS1g1d2hFMDlpbS9veGpHUGhzYkUxYS8xZz09" }
我應該怎么辦?嘗試以前版本的 connect-mongo - 如果是,是哪個版本以及 Node.js 中的配置 - 或者是否有解決此 Chrome 錯誤的方法?謝謝!
uj5u.com熱心網友回復:
問題在 Chrome 版本 107.0.5304.88 中自行解決。
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/528586.html
