چگونه از کش شدن جاوااسکریپت در مرورگر جلوگیری کنیم؟

Mostafa 5 ماه پیش

حتما برای شما هم پیش آمده که برای اجرا و تست کد اصلاح و بروزرسانی شده جاوااسکریپت روی سایت، ناچارید تا به صورت دستی کش مرورگر را پاک کنید و این روند با هر بار آپدیت کد تکرار می شود. این کار فرآیند دیباگ کردن را مشکل می کند.

اگر پروژه شما دارای باگ باشد و شما آن را برطرف کنید، کاربر باید برای مشاهده این تغییرات کش مرورگر خود را پاک کند. اما کاربر از تغییرات درون کد شما باخبر نیست و نمی داند چه زمان باید کش مرورگر خود را پاک کند. حال چه باید کرد؟

راه حل اول: رشته تصادفی

یک رشته (string) تصادفی در scr فایل جاوااسکریپتی که در فایل خود فراخوانی کرده اید، قرار دهید.

<script src='script.js?version=1'></script>

شما باید با هر بار آپدیت کد، version=1 را تغییر دهید. به عبارتی پس از آپدیت این فایل src به صورت زیر تغییر خواهد کرد:

<script src='script.js?version=2'></script>

اکنون مرورگر این فایل را یک فایل جدید تلقی کرده و آن را لود می کند.

راه حل دوم: تغییر داینامیک نسخه فایل

اگر شما از یک اسکریپت سمت سرور برای فراخوانی فایل جاوااسکریپت استفاده می کنید، مثلا PHP، می توانید این کار را به صورت داینامیک انجام دهید. برای مثال:

<script src='script.js?version=<?= time() ?>'></script>

افزودن تابع time() یک رشته یکتا به scr اضافه خواهد کرد. شما همچنین می توانید برای این کار از تابع uniqid() استفاده کنید.

<script src='script.js?random=<?= uniqid()?>'></script>

 

0 دیدگاه
برای قرار دادن دیدگاه وارد شوید

Mostafa

علاقه مند به برنامه نویسی، آموزش و انتقال تجربیات خود به دیگران