کار کردن با Background Sync

اگر پست‌ من در مورد Service Worker ها را خوانده باشید! می‌‌دانید که می‌توانید سایتتان را حتی به صورت آفلاین نیز در دسترس کاربران قرار دهید.

هر چند باید دقت کنید که Service Worker های خود را آپدیت کنید، وگرنه همچنان همیشه سایت به صورت قدیمی لود خواهد شد.

در این پست قصد دارم در مورد Background Sync که یکی از API های Service Worker است صحبت کنم که در صورتی که کاربر تب مرورگر خود را نبسته باشد و اینترنتش قطع شده باشد می‌توانید از آن برای تشخیص آنلاین شدن استفاده کنید و در صورت لزوم کاری کنید.

navigator.serviceWorker.ready.then(function(swRegistration) {
  return swRegistration.sync.register('myFirstSync');
});

اگر این قسمت کد را در sw.js خود قرار دهید می‌تواانید در صورت آنلاین شدن تابع myFirstSync را Register کنید و مثلا Notification ای بفرستید.

توجه داشته باشید Background Sync، در صورت بسته بودن تب مرورگر کار نمی‌کند و Browser ها اکثرا پس از مدتی جلوی فعالیت‌ Service Worker ها را میگیرند.

اما اگر Desktop Application می‌نویسید یا Progressive Web Application ای که کاربر مداوم به سایت شما رجوع می‌کند این ویژگی Experimental یا آزمایشی به کارتان می‌آید.


برای گرفتن پست‌های بعدی، من را دنبال کنید!