Connect เป็นกรอบการทำงานของโหนดมิดเดิลแวร์ หากคุณไม่ได้ระบุโปรดดูเว็บไซต์อย่างเป็นทางการแนะนำ http://www.senchalabs.org/connect/
ภายใต้การกำหนดค่าใน app.js (ต้องวางไว้ก่อน app.use (เส้นทาง);)
การคัดลอกรหัสมีดังนี้:
var connect = ต้องการ ("เชื่อมต่อ");
App.use (Connect.CookieParser ());
App.use (Connect.session ({Secret: 'Jiami', คุกกี้: {maxage: 60*60*24*1000}}));
จากนั้นใช้ในคอนโทรลเลอร์
การคัดลอกรหัสมีดังนี้:
// ตั้งค่า
req.session.username = "sess_username";
req.session.password = "sess_admin";
req.session.your = {ชื่อผู้ใช้: "sess_name", รหัสผ่าน: "sess_pwd"};
//ใช้
console.log (req.session.username);
console.log (req.session.your);
วิธีอื่น ๆ
การคัดลอกรหัสมีดังนี้:
// เข้าสู่ระบบเซสชัน
req.session.destroy (ฟังก์ชั่น (err) {
console.log (err);
-
// งอกใหม่ SID
req.session.regenerate (ฟังก์ชั่น (err) {
console.log (err);
-
หลังจากตั้งค่าเซสชันเราจะเห็นว่ามี SIDS มากขึ้นในคุกกี้เพื่อบันทึก ID เซสชัน
พิมพ์ req.cookies และ req.session วัตถุ
การคัดลอกรหัสมีดังนี้:
console.log (req.cookies);
console.log (req.session);
คุณจะเห็นว่าเซสชันใช้เพื่อบันทึก connect.sid ไปยังไคลเอนต์ แต่เซสชันอยู่ในหน่วยความจำ
2. คุกกี้, เอกสารอย่างเป็นทางการ: (http://www.senchalabs.org/connect/cookieparser.html เอกสารนี้ได้โกงฉันตลอดทั้งวัน) ฉันไม่ต้องพูดอะไรตัวอย่างต่อไปนี้
ตั้งค่า
การคัดลอกรหัสมีดังนี้:
// ตั้งค่าคุกกี้
res.cookie ("ผู้ใช้", {ชื่อผู้ใช้: "cookie_name", รหัสผ่าน: "cookie_pwd"}, {maxage: 60*60*24*1000, httponly: true, path: '/'});
res.cookie ("msg", "ชื่อผู้ใช้หรือรหัสผ่านไม่สามารถว่างเปล่า", {maxage: 60*60*24*1000});
ลบ
การคัดลอกรหัสมีดังนี้:
res.cookie ("msg", "ชื่อผู้ใช้หรือรหัสผ่านไม่สามารถว่างเปล่า", {maxage: 0});