بخش سرویسهای پسزمینه در Chrome DevTools مجموعهای از ابزارها برای APIهای جاوا اسکریپت است که وبسایت شما را قادر میسازد حتی زمانی که کاربر وبسایت شما را باز نکرده است، بهروزرسانیها را ارسال و دریافت کند. یک سرویس پسزمینه از نظر عملکردی مشابه یک فرآیند پسزمینه است.
بخش سرویسهای پسزمینه به شما امکان میدهد سرویسهای پسزمینه زیر را اشکالزدایی کنید:
Chrome DevTools میتواند رویدادهای واکشی، همگامسازی و اعلانها را به مدت سه روز، حتی زمانی که DevTools باز نیست، ثبت کند. این میتواند به شما کمک کند تا مطمئن شوید که رویدادها طبق انتظار ارسال و دریافت میشوند.
In addition to background service events, DevTools can:
- گزارشهایی را که Chrome قبلاً ارسال کرده یا قرار است با استفاده از Reporting API ارسال کند، به شما نشان میدهد.
- به شما امکان میدهد با یک کلیک، کش back/forward را اشکالزدایی و آزمایش کنید .
واکشی پسزمینه
The Background Fetch API enables a service worker to reliably download large resources, like movies or podcasts, as a background service. To log background fetch events for three days, even when DevTools isn't open:
- با استفاده از Background Fetch API، ابزار توسعه (DevTools) را در یک صفحه باز کنید .
به مسیر Application > Background services > Background fetch بروید و کلیک کنید.
ضبط کن .

در صفحه خود، برخی فعالیتهای واکشی پسزمینه را فعال کنید. DevTools رویدادها را در جدول ثبت میکند.

برای مشاهده جزئیات یک رویداد در فضای زیر جدول، روی آن کلیک کنید.
میتوانید DevTools را ببندید و ضبط را تا سه روز ادامه دهید. برای توقف ضبط، روی کلیک کنید.
بس کن .
همگامسازی پسزمینه
API همگامسازی پسزمینه، یک سرویس ورکر آفلاین را قادر میسازد تا پس از برقراری مجدد اتصال اینترنت قابل اعتماد، دادهها را به سرور ارسال کند. برای ثبت رویدادهای همگامسازی پسزمینه به مدت سه روز، حتی زمانی که DevTools باز نیست:
- برای مثال، DevTools را در این صفحه آزمایشی باز کنید.
به مسیر Application > Background services > Background sync بروید و کلیک کنید.
ضبط کن .

در صفحه آزمایشی، روی «ثبت همگامسازی پسزمینه» کلیک کنید تا سرویس ورکر مربوطه ثبت شود و در صورت درخواست، روی «اجازه دادن» کلیک کنید.
Service worker registration is a background sync activity. DevTools logs the events to the table.

برای مشاهده جزئیات یک رویداد در فضای زیر جدول، روی آن کلیک کنید.
میتوانید DevTools را ببندید و ضبط را تا سه روز ادامه دهید. برای توقف ضبط، روی کلیک کنید.
بس کن .
(آزمایشی) کاهش ردیابی پرش
آزمایش کاهش ردیابی پرش در کروم به شما امکان میدهد وضعیت سایتهایی را که به نظر میرسد ردیابی بین سایتی را با استفاده از تکنیک ردیابی پرش انجام میدهند، شناسایی و حذف کنید. میتوانید به صورت دستی کاهش ردیابی را اعمال کنید و لیستی از سایتهایی را که وضعیت آنها حذف شده است، مشاهده کنید.
برای اعمال محدودیتهای ردیابی:
- کوکیهای شخص ثالث را در کروم مسدود کنید . به مسیر زیر بروید و فعال کنید.
> تنظیمات >
حریم خصوصی و امنیت > کوکیها و سایر دادههای سایت >
کوکیهای شخص ثالث را مسدود کنید .
- در
chrome://flags، آزمایش کاهش اثرات ردیابی پرش (Bounce tracking mitigations) را روی Enabled With Deletion تنظیم کنید. - DevTools را باز کنید و به Application > Background services > Bounce tracking mitigations بروید.
- روی لینک برگشتی کلیک کنید و (۱۰ ثانیه) صبر کنید تا کروم برگشت را ثبت کند. تب مشکلات ( issues) در مورد حذف قریبالوقوع وضعیت به شما هشدار میدهد.
- برای حذف فوری وضعیت، روی «اجرای اجباری» کلیک کنید.
![]()
اعلانها
بعد از اینکه یک سرویس ورکر یک پیام فشاری از سرور دریافت کرد، سرویس ورکر از API اعلانها برای نمایش دادهها به کاربر استفاده میکند. برای ثبت اعلانها به مدت سه روز، حتی زمانی که DevTools باز نیست:
- ابزار توسعه (DevTools) را باز کنید
به مسیر Application > Background services > Notifications بروید و کلیک کنید
ضبط کن .

روی «زمانبندی اعلانها» کلیک کنید و وقتی از شما خواسته شد، «مجاز» را انتخاب کنید .
صبر کنید تا اعلان ظاهر شود. DevTools رویدادهای اعلان را در جدول ثبت میکند.

برای مشاهده جزئیات یک رویداد در فضای زیر جدول، روی آن کلیک کنید.
میتوانید DevTools را ببندید و ضبط را تا سه روز ادامه دهید. برای توقف ضبط، روی کلیک کنید.
بس کن .
بارهای سوداگرانه
بارگذاریهای حدسی (speculative loads) امکان بارگذاری تقریباً آنی صفحه را بر اساس قوانین حدسی که شما تعریف میکنید، فراهم میکنند. این به وبسایت شما اجازه میدهد تا صفحاتی را که بیشتر به آنها هدایت میشوید، پیشواکشی (prefetch) و پیشرندر (prerender) کند.
Prefetch یک منبع را از قبل دریافت میکند و Prerender یک قدم فراتر میرود و کل صفحه را در یک فرآیند رندر پسزمینه پنهان رندر میکند.
شما میتوانید بارهای احتمالی را در بخش Application > Background services > Speculative loads اشکالزدایی کنید. این بخش شامل سه نما است:
- Speculative loads . Contains the speculative status for the current page, current URL, pages that the current page attempts to load speculatively, and their statuses.
- قوانین . شامل مجموعه قوانین در صفحه فعلی در پنل عناصر و وضعیت کلی گمانهزنیها است.
- گمانهزنیها . شامل جدولی با اطلاعات مربوط به تلاشهای بارگذاری گمانهزننده و وضعیت آنها است. اگر تلاشی ناموفق بود، میتوانید روی آن در جدول کلیک کنید تا اطلاعات دقیق و دلیل شکست را ببینید.
اشکالزدایی بارهای احتمالی را در این صفحه آزمایشی پیشرندر امتحان کنید:
DevTools را در صفحه باز کنید و به Application > Background services > Speculative loads بروید. اگر هیچ گونه Speculative load که توسط صفحه آغاز شده است را نمیبینید، آن را مجدداً بارگذاری کنید.

صفحه شروع دمو دو صفحه را پیشرندر میکند و یکی را نمیتواند پیشرندر کند. روی «مشاهده همه گمانهزنیها» کلیک کنید.
در بخش گمانهزنیها ، گمانهزنی با وضعیت شکست را انتخاب کنید تا دلیل شکست را به همراه اطلاعات دقیق در پایین آن مشاهده کنید.

در این مورد، پیشرندر با شکست مواجه شد زیرا صفحه
/next3.htmlدر وبسایت وجود ندارد.Optionally, to filter the table in the Speculations tab, in the filter bar at the top, freely type a value or use one of the keyed filters:
url:VALUE,action:VALUE, oraction:VALUE.
بخش قوانین را باز کنید و روی وضعیت کلیک کنید تا مجموعه قوانین را در پایین ببینید. کلیک روی لینک مجموعه قوانین شما را به پنل عناصر میبرد و به شما نشان میدهد که قانون حدس و گمان کجا تعریف شده است.

برای جزئیات بیشتر، به قوانین اشکالزدایی حدس و گمان مراجعه کنید.
پیامرسانی فوری
برای نمایش یک اعلان فشاری به کاربر، یک سرویس ورکر ابتدا باید از API پیام فشاری برای دریافت دادهها از سرور استفاده کند. وقتی سرویس ورکر آماده نمایش اعلان شد، از API اعلانها استفاده میکند. برای ثبت پیامهای فشاری به مدت سه روز، حتی زمانی که DevTools باز نیست:
- برای مثال، DevTools را در این صفحه آزمایشی باز کنید.
به مسیر Application > Background services > Push Messaging بروید و کلیک کنید.
ضبط کن .

در صفحه آزمایشی، گزینه فعال کردن اعلانهای فشاری را فعال کنید، در صورت درخواست، روی «مجاز» کلیک کنید، پیامی تایپ کنید و آن را ارسال کنید. DevTools رویدادهای اعلانهای فشاری را در جدول ثبت میکند.

برای مشاهده جزئیات یک رویداد در فضای زیر جدول، روی آن کلیک کنید.
میتوانید DevTools را ببندید و ضبط را تا سه روز ادامه دهید. برای توقف ضبط، روی کلیک کنید.
بس کن .
گزارش API
Some errors happen only in production. You never see them locally or during development because real users, networks, and devices change the game.
For example, say your new site relies on third-party software that uses document.write() to load critical scripts. New users all over the world open your site but they might have slower connections than you tested with. Unknown to you, your site starts breaking for them because Chrome intervenes against document.write() on slow networks. Alternatively, you might want to keep an eye on deprecated or soon-to-be-deprecated APIs your codebase may be using.
API گزارشدهی برای کمک به شما در نظارت بر فراخوانیهای API منسوخشده، نقضهای امنیتی صفحه شما و موارد دیگر طراحی شده است. میتوانید گزارشدهی را همانطور که در بخش «نظارت بر برنامه وب خود با API گزارشدهی» توضیح داده شده است، تنظیم کنید.
برای مشاهده گزارشهای تولید شده توسط یک صفحه:
DevTools را باز کنید و به Application > Background services > Reporting API بروید.

تب Reporting API به سه بخش تقسیم میشود:
- جدول گزارشها با اطلاعات زیر در مورد هر گزارش:
- نشانی اینترنتی (URL) که باعث ایجاد گزارش شده است
- نوع تخلف
- گزارش وضعیت
- نقطه پایانی مقصد
- تولید شده در مهر زمانی
- گزارش متن
- بخش پیشنمایش متن گزارش . برای پیشنمایش متن گزارش، روی یک گزارش در جدول گزارشها کلیک کنید.
- بخش Endpoints با نمای کلی از تمام Endpointهای پیکربندی شده در سربرگ
Reporting-Endpoints.
گزارش وضعیت
ستون وضعیت به شما میگوید که آیا کروم گزارش را با موفقیت ارسال کرده، در شرف ارسال آن است یا ناموفق بوده است.
| وضعیت | توضیحات |
|---|---|
Success | مرورگر گزارش را ارسال کرده و نقطه پایانی با کد موفقیت ( 200 یا کد پاسخ موفقیت دیگری 2xx ) پاسخ داده است. |
Pending | مرورگر در حال تلاش برای ارسال گزارش است. |
Queued | گزارش ایجاد شده است و مرورگر هنوز سعی در ارسال آن ندارد. در یکی از این دو حالت، گزارش به صورت Queued نمایش داده میشود:
|
MarkedForRemoval | پس از مدتی تلاش مجدد ( Queued )، مرورگر تلاش برای ارسال گزارش را متوقف کرده و به زودی آن را از فهرست گزارشهای ارسالی خود حذف خواهد کرد. |
گزارشها، چه با موفقیت ارسال شوند و چه نشوند، پس از مدتی حذف میشوند.
زمینه گزارش خرابی
با استفاده از Reporting API ، میتوانید وبسایت خود را طوری پیکربندی کنید که خرابیها را به یک نقطه پایانی سرور default یا یک crash-reporting گزارش دهد. یک گزارش خرابی میتواند شامل یک رابط CrashReportContext باشد که به شما امکان میدهد دادههای مربوط به خرابی دلخواه را در جفتهای کلید-مقدار برای زمینه مرور سطح بالای فعلی ثبت کنید.
در تب Application > Background services > Reporting API > Crash Report Context ، میتوانید دادههای مربوط به زمینهی خرابی خود را بررسی کرده و در نوار فیلتر بالا، آنها را بر اساس کلید یا مقدار فیلتر کنید.

جلسات مرتبط با دستگاه
اعتبارنامههای جلسهای متصل به دستگاه (DBSC) یک رابط برنامهنویسی کاربردی وب و پروتکلی بین کاربران و سرورها است که هدف آن جلوگیری از سرقت کوکیها با اجازه دادن به کاربر برای ادعای مالکیت یک کلید خصوصی ذخیرهشده به صورت ایمن است.
To view the device bound sessions, their definitions, and events:
- DevTools را در صفحهای که از DBSC استفاده میکند، باز کنید .
- به مسیر Application > Background services > Device bound sessions بروید.
در نوار کناری سمت چپ، یک سایت را باز کنید تا جلسات فعال آن را مشاهده کنید. برای مشاهده تعریف آن، یک جلسه را انتخاب کنید.

جدول رویدادها ، رویدادهای DBSC شامل ایجاد، بهروزرسانی، چالش و خاتمه را ثبت میکند. برای حفظ لیست رویدادها در پیمایش صفحات، گزینهی `Preserve log` را تیک بزنید.
در جدول رویدادها ، رویدادی را انتخاب کنید تا جزئیات آن را مشاهده کنید.
If an event fails, you will see the
Errormessage in the Result column. Select the failed event to see its details, response error code, and the cause of failure.
بخش مربوط به جلسات متصل به دستگاه در نوار کناری ممکن است مشکلات زیر را برجسته کند:
- جلسات خاتمهیافته : با یک خط خورده و یک نماد خروج از پایگاه داده در نوار کناری نشان داده شده است.
- رویدادهای ناموفق : با یک نماد هشدار برجسته شده است. عنصر «بدون جلسه» رویدادهای ناموفقی را ثبت میکند که به یک سایت پیوند داده شدهاند اما به یک جلسه شناخته شده پیوند ندارند.