chrome.devtools.network

الوصف

يمكنك استخدام واجهة برمجة التطبيقات chrome.devtools.network لاسترداد معلومات عن طلبات الشبكة التي تعرضها أدوات المطوّرين في لوحة "الشبكة".

البيان

يجب الإعلان عن المفاتيح التالية في البيان لاستخدام واجهة برمجة التطبيقات هذه.

"devtools_page"

يمكنك الاطّلاع على ملخص واجهات برمجة التطبيقات في "أدوات مطوّري البرامج" للاطّلاع على مقدمة عامة عن استخدام واجهات برمجة التطبيقات الخاصة بأدوات المطوّرين.

نظرة عامة

يتم عرض معلومات طلبات الشبكة بتنسيق أرشيف HTTP (HAR). إن وصف إنّ HAR خارج نطاق هذا المستند. يُرجى الاطّلاع على مواصفات الإصدار 1.2 من HAR.

في ما يتعلق بـ HAR، تعرض الطريقة chrome.devtools.network.getHAR() سجل HAR بالكامل، بينما يوفّر الحدث chrome.devtools.network.onRequestFinished إدخال HAR كوسيطة للحدث. معاودة الاتصال.

تجدر الإشارة إلى أنّ محتوى الطلب لا يتم توفيره كجزء من بروتوكول HAR لأسباب تتعلّق بالكفاءة. يمكنك الاتصال طريقة getContent() الخاصة بالطلب لاسترداد المحتوى.

إذا تم فتح نافذة "أدوات المطوّرين" بعد تحميل الصفحة، قد تكون بعض الطلبات مفقودة في مصفوفة الإدخالات التي تعرضها الدالة getHAR(). أعِد تحميل الصفحة للحصول على جميع الطلبات. بشكل عام، يجب أن تتطابق قائمة الطلبات التي يعرضها getHAR() مع تلك المعروضة في لوحة "الشبكة".

أمثلة

تسجّل الرمز البرمجي التالي عناوين URL لجميع الصور التي يزيد حجمها عن 40 كيلوبايت عند تحميلها:

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) + '"))');
    }
  }
);

لتجربة واجهة برمجة التطبيقات هذه، يُرجى تثبيت أمثلة على واجهة برمجة تطبيقات أدوات مطوّري البرامج من chrome-extension-samples المستودع.

الأنواع

Request

يمثل ذلك طلب الشبكة لمورد مستند (نص برمجي وصورة وما إلى ذلك). اطّلِع على مواصفات HAR كمرجع.

أماكن إقامة

  • getContent

    فراغ

    عرض محتوى نص الاستجابة

    تبدو دالة getContent كما يلي:

    (callback: function) => {...}

    • رد الاتصال

      دالة

      تظهر المَعلمة callback على النحو التالي:

      (content: string, encoding: string) => void

      • محتوى

        سلسلة

        محتوى نص الاستجابة (يُحتمَل أن يكون مشفَّرًا)

      • الترميز

        سلسلة

        يكون هذا الحقل فارغًا إذا لم يكن المحتوى مُرمّزًا، وإلا سيكون اسم الترميز فارغًا. في الوقت الحالي، يُسمح فقط باستخدام Base64.

الطُرق

getHAR()

chrome.devtools.network.getHAR(
  callback: function,
)

تعرض سجلّ HAR الذي يحتوي على جميع طلبات الشبكة المعروفة.

المعلمات

  • رد الاتصال

    دالة

    تظهر المَعلمة callback على النحو التالي:

    (harLog: object) => void

    • harLog

      كائن

      سجلّ HAR يُرجى الاطّلاع على مواصفات HAR لمعرفة التفاصيل.

فعاليات

onNavigated

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

يتم تنشيطه عند انتقال النافذة التي تم فحصها إلى صفحة جديدة.

المعلمات

  • رد الاتصال

    دالة

    تظهر المَعلمة callback على النحو التالي:

    (url: string) => void

    • url

      سلسلة

onRequestFinished

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

يتم الإطلاق عند الانتهاء من طلب الشبكة وتوفر جميع بيانات الطلب.

المعلمات

  • رد الاتصال

    دالة

    تظهر المَعلمة callback على النحو التالي:

    (request: Request) => void