เซสชันที่ใช้คุกกี้
สร้างและจัดการเซสชันฝั่งเซิร์ฟเวอร์โดยใช้คุกกี้ HTTP-only ที่ปลอดภัย
เซสชันที่ใช้คุกกี้ เป็นบทเรียน Sveltejs Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 1 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Sveltejs Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Sveltejs Academy มีบทเรียนทั้งหมด 4 บทเรียน
เหตุผลที่ใช้คุกกี้
คุกกี้เป็นวิธีที่น่าเชื่อถือที่สุดในการคงสถานะการตรวจสอบสิทธิ์ระหว่างการโหลดหน้า โดยเฉพาะแอปที่ใช้ SSR
เฉพาะ HTTP
คุกกี้แบบเฉพาะ HTTP ไม่สามารถอ่านได้ด้วย JavaScript จึงป้องกันการขโมยโทเค็นเซสชันด้วย XSS
ปลอดภัยและ SameSite
กำหนด secure: true ในระบบจริงเสมอ และกำหนด sameSite: "lax" เพื่อช่วยลดความเสี่ยงจาก CSRF
การกำหนดคุกกี้เซสชัน
ใช้ตัวช่วย cookies ในการกระทำหรือจุดปลายทาง
cookies.set("sessionId", sid, {
path: "/",
httpOnly: true,
secure: true,
sameSite: "lax",
maxAge: 60 * 60 * 24 * 7
});การอ่านเซสชัน
อ่านคุกกี้ภายในฮุก แล้วแก้ไขเซสชันให้เป็นออบเจ็กต์ผู้ใช้
const sid = event.cookies.get("sessionId");
event.locals.user = await db.session.findUser(sid);การออกจากระบบ
ลบคุกกี้เพื่อออกจากระบบ
cookies.delete("sessionId", { path: "/" });การจัดเก็บฝั่งเซิร์ฟเวอร์
จัดเก็บรายละเอียดเซสชัน (รหัสผู้ใช้ วันหมดอายุ) ในฐานข้อมูลหรือแคชความเร็วสูง (Redis)
การหมดอายุและการต่ออายุ
เปลี่ยนรหัสเซสชันเป็นระยะและหลังการกระทำที่ละเอียดอ่อน เช่น การเปลี่ยนรหัสผ่าน
การป้องกัน CSRF
SvelteKit ป้องกัน CSRF ในการกระทำของแบบฟอร์มโดยค่าเริ่มต้นผ่านการตรวจสอบต้นทาง
ใช้ HTTPS เท่านั้น
ให้บริการเซสชันผ่าน HTTPS เสมอ เพราะคุกกี้ที่กำหนด secure จำเป็นต้องใช้ HTTPS
โทเค็นสำหรับต่ออายุ
สำหรับการตรวจสอบสิทธิ์ระยะยาว ให้ใช้คุกกี้เซสชันอายุสั้นร่วมกับโทเค็นสำหรับต่ออายุที่มีอายุยาวกว่า
ตรวจสอบอย่างรวดเร็ว
เหตุใดจึงควรใช้คุกกี้ httpOnly
สรุปทบทวน
ใช้คุกกี้ httpOnly, secure และ sameSite ที่เซิร์ฟเวอร์เป็นผู้กำหนด จากนั้นแก้ไขคุกกี้ให้เป็นผู้ใช้ในฮุก เพื่อให้การตรวจสอบสิทธิ์รองรับ SSR
คำถามที่พบบ่อย
บทเรียน “เซสชันที่ใช้คุกกี้” ฟรีหรือไม่
ใช่ — ข้อความเต็มของ “เซสชันที่ใช้คุกกี้” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Sveltejs Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Sveltejs Academy มีบทเรียนทั้งหมด 4 บทเรียน
คุณจะเรียนรู้อะไรในบทเรียน “เซสชันที่ใช้คุกกี้”
สร้างและจัดการเซสชันฝั่งเซิร์ฟเวอร์โดยใช้คุกกี้ HTTP-only ที่ปลอดภัย คุณปฏิบัติ Sveltejs Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน
คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Sveltejs Academy หรือไม่
ไม่จำเป็นต้องมีประสบการณ์มาก่อน Sveltejs Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 1 จากทั้งหมด 4 บทเรียน
บทเรียน “เซสชันที่ใช้คุกกี้” ใช้เวลานานแค่ไหน
บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย
ฉันเขียนและรันโค้ดในบทเรียน Sveltejs Academy นี้ได้ไหม
ได้ บทเรียน Sveltejs Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ
บทเรียนทั้งหมดในหลักสูตรนี้
- เซสชันที่ใช้คุกกี้
- JWT ในคุกกี้ HTTP-Only
- เส้นทางที่มีการป้องกันใน Hook handle()
- OAuth ด้วย SvelteKit และ Lucia Auth