chrome.devtools.network

توضیحات

از API chrome.devtools.network برای بازیابی اطلاعات مربوط به درخواست‌های شبکه که توسط ابزارهای توسعه‌دهندگان در پنل شبکه نمایش داده می‌شوند، استفاده کنید.

اطلاعات درخواست‌های شبکه در قالب بایگانی HTTP ( HAR ) نمایش داده می‌شود. شرح HAR خارج از محدوده این سند است، به مشخصات HAR نسخه ۱.۲ مراجعه کنید.

از نظر HAR، متد chrome.devtools.network.getHAR() کل گزارش HAR را برمی‌گرداند، در حالی که رویداد chrome.devtools.network.onRequestFinished ورودی HAR را به عنوان آرگومانی برای فراخوانی رویداد ارائه می‌دهد.

توجه داشته باشید که محتوای درخواست به دلایل افزایش بهره‌وری به عنوان بخشی از HAR ارائه نمی‌شود. می‌توانید متد getContent() مربوط به درخواست را برای بازیابی محتوا فراخوانی کنید.

اگر پنجره‌ی ابزارهای توسعه‌دهنده پس از بارگذاری صفحه باز شود، ممکن است برخی از درخواست‌ها در آرایه‌ی ورودی‌های برگردانده شده توسط getHAR() وجود نداشته باشند. برای دریافت تمام درخواست‌ها، صفحه را مجدداً بارگذاری کنید. به طور کلی، لیست درخواست‌های برگردانده شده توسط getHAR() باید با لیست نمایش داده شده در پنل شبکه مطابقت داشته باشد.

برای آشنایی کلی با استفاده از APIهای ابزارهای توسعه‌دهندگان، به خلاصه APIهای DevTools مراجعه کنید.

مانیفست

برای استفاده از این API، کلیدهای زیر باید در مانیفست تعریف شوند.

"devtools_page"

مثال‌ها

کد زیر URL های تمام تصاویر بزرگتر از ۴۰ کیلوبایت را هنگام بارگذاری ثبت می‌کند:

chrome.devtools.network.onRequestFinished.addListener(
  function(request) {
    if (request.response.bodySize > 40*1024) {
      chrome.devtools.inspectedWindow.eval(
          'console.log("Large image: " + unescape("' +
          escape(request.request.url) + '"))');
    }
  }
);

برای امتحان کردن این API، نمونه‌های API مربوط به devtools را از مخزن chrome-extension-samples نصب کنید.

انواع

Request

یک درخواست شبکه برای یک منبع سند (اسکریپت، تصویر و غیره) را نشان می‌دهد. برای مرجع به مشخصات HAR مراجعه کنید.

خواص

  • دریافت محتوا

    باطل

    محتوای بدنه پاسخ را برمی‌گرداند.

    تابع getContent به شکل زیر است:

    () => {...}

    • بازده

      قول دادن<object>

      در حال بررسی

      تابعی که پس از اتمام درخواست، بدنه پاسخ را دریافت می‌کند.

روش‌ها

getHAR()

chrome.devtools.network.getHAR(): Promise<object>

گزارش HAR را که شامل تمام درخواست‌های شناخته‌شده شبکه است، برمی‌گرداند.

بازگشت‌ها

  • قول دادن<object>

    در حال بررسی

    تابعی که پس از تکمیل درخواست، گزارش HAR را دریافت می‌کند.

رویدادها

onNavigated

chrome.devtools.network.onNavigated.addListener(
  callback: function,
)

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

پارامترها

  • تماس برگشتی

    تابع

    پارامتر callback به شکل زیر است:

    (url: string) => void

    • آدرس اینترنتی

      رشته

onRequestFinished

chrome.devtools.network.onRequestFinished.addListener(
  callback: function,
)

زمانی اجرا می‌شود که یک درخواست شبکه پایان یافته و تمام داده‌های درخواست در دسترس باشند.

پارامترها

  • تماس برگشتی

    تابع

    پارامتر callback به شکل زیر است:

    (request: Request) => void