پرش به محتوا

کتابخانه

دانلود js-cookie و نشانی CDN ایرانی

js-cookie یه کتابخانه جاوااسکریپت ساده و خیلی سبکه که کار با کوکی های مرورگر رو راحت می کنه. با چند تا متد کوتاه می تونی کوکی بسازی، بخونی و پاک کنی و لازم نیست با رشته خام document.cookie سروکله بزنی. مجوزش MIT هست و به کتابخانه دیگه ای وابسته نیست.

نسخه رسمی و بدون تغییر، از منبع رسمی با مجوز MIT؛ هش هر فایل با منبع بررسی شده است.

آخرین نسخه
۳.۰.۸
نسخه‌ها در مخزن
۸
مجوز
MIT
سازنده
Klaus Hartl
آخرین بررسی
آخرین به‌روزرسانی
توضیحات

آخرین نسخه

آخرین نسخه ۳.۰.۸ آخرین

۱۴ کیلوبایت· ۷ فایل· انتشار

دانلود
نشانی مستقیم فایل اصلی https://mirror.wbweb.ir/npm/js-cookie@3.0.8/dist/js.cookie.min.js
کد آماده با SRI <script src="https://mirror.wbweb.ir/npm/js-cookie@3.0.8/dist/js.cookie.min.js" integrity="sha256-UGg03egVJMdLqTxAxzrAMW+41Phg+BY1OlVisvgRjBI=" crossorigin="anonymous"></script>

SHA-256: 506834dde81524c74ba93c40c73ac0316fb8d4f860f816353a5562b2f8118c12

درباره js-cookie (جی اس کوکی)

اگه تا حالا مستقیم با document.cookie کار کرده باشی، می دونی چقدر اذیت می کنه. همه کوکی ها توی یه رشته بلند جمع شدن. برای خوندن یه مقدار باید رشته رو خودت تیکه تیکه کنی، تاریخ انقضا باید با فرمت خاصی نوشته بشه و کاراکترهای خاص هم باید درست کدگذاری بشن. js-cookie این دردسرها رو توی یه API کوچیک و خوانا جمع کرده: با Cookies.set مقدار می ذاری، با Cookies.get می خونی و با Cookies.remove پاکش می کنی.

کاربردهاش توی سایت های معمولی زیاده. مثلا می تونی یادت بمونه کاربر بنر تخفیف شب یلدا رو بسته و دوباره نشونش ندی. زبان انتخابی، حالت تیره سایت و پارامتر کمپین تبلیغاتی رو هم می شه با کوکی نگه داشت. اگه سایت وردپرسی داری و قالب یا افزونه خودت رو می نویسی، js-cookie یه فایل جاوااسکریپت مستقله و به jQuery نیازی نداره. فقط همون رو توی صفحه لود می کنی و سایت سنگین نمی شه.

چند جا هم انتخاب درستی نیست. اطلاعات حساس مثل توکن ورود یا نشانه نشست کاربر رو با جاوااسکریپت توی کوکی نذار. کوکی های HttpOnly از سمت جاوااسکریپت نه خونده می شن و نه نوشته، پس برای ورود کاربر باید خود سرور کوکی رو بسازه. اندازه هر کوکی هم محدوده، حدود چهار کیلوبایت، و کوکی ها با هر درخواست به سرور فرستاده می شن. داده حجیم رو اونجا ذخیره نکن. برای اون کارها localStorage یا یه راه حل سمت سرور بهتره.

موقع استفاده چند نکته رو یادت باشه. گزینه expires بر حسب روز حساب می شه و اگه ندی، کوکی تا بسته شدن مرورگر می مونه. گزینه های path، domain، secure و sameSite هم هست. مهم ترینش اینه که برای پاک کردن کوکی باید همون path و domain زمان ساخت رو بدی. وگرنه مرورگر یه کوکی دیگه رو هدف می گیره و کوکی اصلی سر جاش می مونه. اگه مقدار ذخیره شده شیء یا آرایه باشه، بهتره خودت قبلش با JSON.stringify تبدیلش کنی و موقع خوندن با JSON.parse برگردونیش.

نسخه های رسمی و بدون تغییر js-cookie رو توی مخزن داخلی ما هم نگه داشتیم. وقتی دسترسی به npm یا CDN های خارجی قطعه، می تونی فایل رو از همین صفحه برداری و روی هاست خودت بذاری.

راهنمای استفاده

استفاده ازش خیلی ساده است و لازم نیست ابزار ساخت یا npm روی سرور داشته باشی. مراحل کلی اینه:

  • فایل کتابخانه رو با کد آماده پایین همین صفحه به صفحه اضافه کن. قبل از اسکریپت خودت لود بشه تا موقع اجرا در دسترس باشه.
  • توی وردپرس این کار رو با wp_enqueue_script توی قالب یا افزونه انجام بده و فایل رو روی هاست خودت بذار. اسکریپت خودت رو هم وابسته به js-cookie ثبت کن تا ترتیب لود درست بشه.
  • برای ساختن کوکی از Cookies.set استفاده کن. اسم و مقدار رو می دی و اگه خواستی گزینه هایی مثل expires برای مدت ماندگاری به روز، path و sameSite رو هم اضافه می کنی.
  • برای خوندن از Cookies.get با اسم کوکی استفاده کن. اگه کوکی وجود نداشته باشه، undefined بر می گرده، پس قبل از استفاده چکش کن.
  • برای حذف از Cookies.remove استفاده کن و حتما همون path و domain زمان ساخت رو بده.
  • توی سایتی که با HTTPS کار می کنه، گزینه secure رو فعال کن و یه مقدار مناسب هم برای sameSite بذار.

بعد از نوشتن کد، بخش Application یا Storage ابزار توسعه دهنده مرورگر رو باز کن و ببین کوکی با مقدار و انقضای درست ساخته شده یا نه.

همه نسخه‌ها (۸)

نسخه‌های ۳.x ۶ نسخه
  • ۳.۰.۸ آخرین نسخه ۱۴ کیلوبایت·
    دانلودنسخه 3.0.8
    نشانی مستقیم فایل اصلی 3.0.8 https://mirror.wbweb.ir/npm/js-cookie@3.0.8/dist/js.cookie.min.js
  • ۳.۰.۷ ۱۴ کیلوبایت·
    دانلودنسخه 3.0.7
    نشانی مستقیم فایل اصلی 3.0.7 https://mirror.wbweb.ir/npm/js-cookie@3.0.7/dist/js.cookie.min.js
  • ۳.۰.۶ ۱۴ کیلوبایت·
    دانلودنسخه 3.0.6
    نشانی مستقیم فایل اصلی 3.0.6 https://mirror.wbweb.ir/npm/js-cookie@3.0.6/dist/js.cookie.min.js
  • ۳.۰.۵ ۱۳ کیلوبایت·
    دانلودنسخه 3.0.5
    نشانی مستقیم فایل اصلی 3.0.5 https://mirror.wbweb.ir/npm/js-cookie@3.0.5/dist/js.cookie.min.js
  • ۳.۰.۱ ۱۳ کیلوبایت·
    دانلودنسخه 3.0.1
    نشانی مستقیم فایل اصلی 3.0.1 https://mirror.wbweb.ir/npm/js-cookie@3.0.1/dist/js.cookie.min.js
  • ۳.۰.۰ ۱۳ کیلوبایت·
    دانلودنسخه 3.0.0
    نشانی مستقیم فایل اصلی 3.0.0 https://mirror.wbweb.ir/npm/js-cookie@3.0.0/dist/js.cookie.min.js
نسخه‌های ۲.x ۲ نسخه
  • ۲.۲.۱ ۶ کیلوبایت·
    دانلودنسخه 2.2.1
    نشانی مستقیم فایل اصلی 2.2.1 https://mirror.wbweb.ir/npm/js-cookie@2.2.1/src/js.cookie.js
  • ۲.۲.۰ قدیمی‌ترین نسخه ۶ کیلوبایت·
    دانلودنسخه 2.2.0
    نشانی مستقیم فایل اصلی 2.2.0 https://mirror.wbweb.ir/npm/js-cookie@2.2.0/src/js.cookie.js

پرسش‌های رایج

  • js-cookie یه کتابخانه کوچیک جاوااسکریپت برای ساختن، خوندن و پاک کردن کوکی های مرورگره. به جای کار با رشته خام document.cookie چند تا متد ساده بهت می ده. برای یادآوری بسته شدن بنر، ذخیره زبان یا تم سایت و نگه داشتن پارامتر کمپین خیلی به درد می خوره.

  • کوکی ها با هر درخواست به سرور فرستاده می شن و می تونن تاریخ انقضا، دامنه و مسیر داشته باشن، ولی ظرفیتشون کمه. localStorage ظرفیت بیشتری داره و به سرور فرستاده نمی شه. اگه سرور باید مقدار رو ببینه، کوکی بهتره. اگه فقط مرورگر بهش نیاز داره، localStorage معمولا راحت تره.

  • معمولا دلیلش اینه که path یا domain موقع حذف با زمان ساخت فرق داره. مرورگر کوکی ها رو با اسم، دامنه و مسیر از هم تشخیص می ده. همون گزینه هایی که به Cookies.set دادی رو به Cookies.remove هم بده. بعدش توی ابزار توسعه دهنده مرورگر هم چک کن که پاک شده باشه.

  • آره، js-cookie به jQuery وابسته نیست و یه فایل مستقله. کافیه با wp_enqueue_script توی قالب یا افزونه لودش کنی و کد خودت رو وابسته بهش ثبت کنی. اگه یه افزونه دیگه قبلا همین کتابخانه رو لود کرده، دوباره لودش نکن تا تداخل پیش نیاد.

  • نه. کوکی HttpOnly عمدا از دید جاوااسکریپت پنهان می شه تا امنیت بیشتری داشته باشه، و js-cookie هم یه کتابخانه جاوااسکریپته. برای کوکی هایی مثل نشست ورود کاربر، خود سرور باید کوکی رو تنظیم کنه، نه کد سمت مرورگر.

چیزی که لازم دارید اینجا نیست؟

نام کتابخانه، افزونه یا قالب را بفرستید؛ پس از بررسی، نسخه‌های رسمی آن به مخزن اضافه می‌شود.