Tôi có một tình huống mà một ứng dụng có thể được truy cập từ nhiều miền khác nhau. Ví dụ: foo.com và bar.com cả về mặt lý thuyết đều có thể trỏ đến ứng dụng của tôi. Ngoài ra, tên miền phụ của chúng cũng có thể trỏ đến ứng dụng của tôi, ví dụ: red.foo.com và blue.foo.com. Tôi đang sử dụng phiên Cookie Express, và mã khởi tạo của tôi cho phiên trông như thế:Phiên Express với miền cookie khác nhau theo yêu cầu?
app.use(express.session({
secret: "secret",
cookie: {
domain: ".foo.com"
},
store: new MongoStore({
db: db
})
}));
Đó hoạt động tốt cho khi người dùng đi qua foo.com hoặc bất kỳ đó là tên miền phụ, nhưng bar.com sẽ không hoạt động. Tôi cần phải có cả hai cùng một lúc. Lý tưởng nhất, tôi sẽ đặt nó vào một tên miền khác nhau theo yêu cầu, nhưng tôi không chắc chắn làm thế nào tôi sẽ làm điều đó. Yêu cầu của tôi rất không đồng bộ và nếu tôi chỉ đặt nó cho toàn bộ ứng dụng theo mọi yêu cầu, tôi lo sợ nó có thể không hoạt động khi hai cuộc gọi đến cùng một lúc.
Điều này có thể thực hiện được không? Có ai có ý tưởng nào để giải quyết vấn đề này không?
@fardjad điều này lý tưởng, bạn có thêm thông tin nào không? Tôi không phải là quen thuộc như tôi muốn tôi với middlewares –
Vì vậy, về cơ bản, tôi sẽ lặp qua danh sách các lĩnh vực mà tôi muốn để có thể thiết lập các phiên trên, và làm một app.use cho mỗi một? Vì vậy, sẽ có một loạt các phần mềm trung gian 'express.session' khác được khởi tạo ở đầu ứng dụng của tôi và hoạt động trong suốt cuộc đời của ứng dụng của tôi? –