Công lý

Express Session Là Gì ? Tại Sao rất cần thiết ? Tại Sao rất cần thiết

[Globalizethis]

Nếu lập trình web bằng những tiếng nói như Java/php/dotNet kiên cố những du khách ko lạ với khái niệm session. Đây là một công cụ vô cùng tiện dụng để định danh khác hàng để biết khách hàng này đã đăng nhập chưa, ID là gì. Hoặc để lưu thông tin giỏ hàng của khách hàng nào đó xem họ đã bỏ bao nhiêu món hàng vào shopping cart.

du khách đang xem: Express session là gì

Bản chất session là lưu một cookie với chuỗi tự nhiên (được hash) ở client, phía server nó sẽ lưu một DB riêng với key là giá trị cookie ở client. Nhờ vậy, nó định danh được từng client và biết những session nào thuộc client nào. Session-cookie buộc phải đi chung với nhau và hiện nay chưa với cơ chế hiệu quả hơn để xử lý.

*

Ở những hệ thống khác, session được cung cấp như một phần của tiếng nói, du khách chỉ việc gọi hàm hoặc mục tiêu ra là sử dụng.

Xem thêm: Tiểu Sử Ninh Dương Lan Ngọc Sinh Năm Bao Nhiêu ? Ninh Dương Lan Ngọc Sinh Năm Bao Nhiêu

Nodejs là tiếng nói bất đồng bộ, bản thân nó ko cung cấp những phương thức set/get session như những tiếng nói khác. Mặc dù nó với cung cấp cơ chế lấy cookie trong module http nhưng việc truy xuất cũng vô cùng nhiêu khê.

May thay, với một module giúp du khách làm việc này là express-session. Cơ chế của nó ko khác những hệ thống khác, vẫn là sử dụng một cookie ở client để đánh dấu ID client, và data session được lưu tại server. Để sử dụng module express-session du khách chỉ cần load module này về bằng câu lệnh

npm install express-sessionvar session = require(‘express-session‘)

Sau đó chỉ việc gắn nó vào hệ thống

var app = express()app.set(‘trust proxy’, một) // trust first proxy app.use(session( secret: ‘keyboard cat’, resave: false, saveUninitialized: true, cookie: secure: true ))

với một điểm bất tiện, default của nó là lưu thông tin session trong memory. Điều này với nghĩ là nếu du khách phải restart lại node thì coi như . . . mất hế. Trong quá trình debug hoặc develop thì ko nói làm gì, chứ giai đoạn production mà như vậy thì ko chấp nhận được.

VD nếu du khách đinh lưu giá trị session vào file, với thể sử dụng package :

var session = require(‘express-session’);var FileStore = require(‘session-file-store’)(session);

app.use(session( store: new FileStore(options), secret: ‘keyboard cat’));

Rất đơn thuần phải ko những du khách.

Tùy tình hình du khách với thể tậu store session ở đâu, kỳ vọng bài viết này giúp du khách với tầm nhìn tổng quan về sission trong nodejs. Và hãy nhớ: loại gì tiếng nói khác làm được thì nodejs cũng làm được !

Nguồn : Sưu tầm

Related Articles

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *

Back to top button