จะทำให้คุกกี้หมดอายุใน 30 นาทีโดยใช้ jQuery ได้อย่างไร?


121

จะหมดอายุคุกกี้ใน 30 นาทีได้อย่างไร? ฉันใช้คุกกี้ jQuery ฉันสามารถทำอะไรแบบนี้ได้

$.cookie("example", "foo", { expires: 1 });

เป็นเวลา 1 วัน แต่เราจะตั้งเวลาหมดอายุเป็น 30 นาทีได้อย่างไร

คำตอบ:


235

30 นาทีคือ30 * 60 * 1000มิลลิวินาที เพิ่มลงในวันที่ปัจจุบันเพื่อระบุวันหมดอายุ 30 นาทีในอนาคต

 var date = new Date();
 var minutes = 30;
 date.setTime(date.getTime() + (minutes * 60 * 1000));
 $.cookie("example", "foo", { expires: date });

6
สำหรับผลงานสำหรับชาติที่ใหม่กว่า: js-cookie
cssyphus

4

หากคุณใช้jQuery Cookie ( https://plugins.jquery.com/cookie/ ) คุณสามารถใช้จุดทศนิยมหรือเศษส่วนได้

ในหนึ่งวัน1หนึ่งนาทีจะเป็น1 / 1440(1440 นาทีต่อวัน)

ดังนั้น 30 30 / 1440 = 0.02083333นาที

รหัสสุดท้าย:

$.cookie("example", "foo", { expires: 30 / 1440, path: '/' });

ฉันได้เพิ่มpath: '/'เพื่อให้คุณไม่ลืมว่าคุกกี้ถูกตั้งค่าบนเส้นทางปัจจุบัน หากคุณ/my-directory/ใช้คุกกี้จะถูกตั้งค่าไว้สำหรับไดเรกทอรีนี้เท่านั้น


0

ฉันมีปัญหาในการทำให้โค้ดด้านบนทำงานภายใน cookie.js รหัสต่อไปนี้ได้รับการจัดการเพื่อสร้างการประทับเวลาที่ถูกต้องสำหรับการหมดอายุของคุกกี้ในอินสแตนซ์ของฉัน

var inFifteenMinutes = วันที่ใหม่ (วันที่ใหม่ () getTime () + 15 * 60 * 1000);

นี่มาจากคำถามที่พบบ่อยเกี่ยวกับ Cookie.js

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.