chrome.debugger

Açıklama

chrome.debugger API'si, Chrome'un uzaktan hata ayıklama protokolü için alternatif bir aktarım görevi görür. Ağ etkileşimi aracı üzerinden bir veya daha fazla sekme eklemek, JavaScript'te hata ayıklamak, DOM ve CSS'yi değiştirmek ve daha pek çok işlem için chrome.debugger kullanın. sendCommand içeren sekmeleri hedeflemek ve etkinlikleri onEvent geri çağırmalarından tabId tarihine göre yönlendirmek için Debuggee özelliğini tabId kullanın.

İzinler

debugger

Güvenlik Notu

chrome.debugger API, güvenlik nedeniyle tüm Chrome Geliştirici Araçları'na erişim sağlamaz Protokol Alanları. Kullanılabilir alanlar şunlardır: Erişilebilirlik, Denetimler, CacheStorage, Konsol, CSS, Veritabanı, Hata Ayıklayıcı, DOM, DOMDebugger, DOMSnapshot, Emülasyon, Getirme, , Giriş, İnceleyici, Günlük, , Yer Paylaşımı, Sayfa, Performans, Profiler, Çalışma zamanı, Depolama, Hedef, İzleme, WebAudio ve WebAuthn.

Manifest

Bu API'yi kullanmak için uzantınızın manifest dosyasında "debugger" iznini beyan etmeniz gerekir.

{
  "name": "My extension",
  ...
  "permissions": [
    "debugger",
  ],
  ...
}

Örnekler

Bu API'yi denemek için chrome-extension-samples bölümünden hata ayıklayıcı API örneğini yükleyin. depodur.

Türler

Debuggee

Hata ayıklama uygulaması tanımlayıcısı. tabId, uzantı kimliği veya targetId belirtilmelidir

Özellikler

  • extensionId

    dize isteğe bağlı

    Hata ayıklamak istediğiniz uzantının kimliği. Bir uzantının arka plan sayfasına yalnızca --silent-debugger-extension-api komut satırı anahtarı kullanıldığında eklenebilir.

  • tabId

    sayı isteğe bağlı

    Hata ayıklamak istediğiniz sekmenin kimliği.

  • targetId

    dize isteğe bağlı

    Hata ayıklama hedefinin opak kimliği.

DebuggerSession

Chrome 125 ve sonraki sürümler 'nı inceleyin.

Hata ayıklayıcı oturum tanımlayıcısı. tabId, uzantı kimliği veya targetId özelliklerinden biri belirtilmelidir. Ayrıca isteğe bağlı bir sessionId değeri de sağlanabilir. onEvent kaynağından gönderilen bağımsız değişkenler için sessionId değerinin belirtilmesi, etkinliğin kök hatası ayıklama oturumundaki bir alt protokol oturumundan geldiği anlamına gelir. sendCommand hizmetine iletildiğinde sessionId belirtilirse kök hata ayıklama oturumundaki bir alt protokol oturumunu hedefler.

Özellikler

  • extensionId

    dize isteğe bağlı

    Hata ayıklamak istediğiniz uzantının kimliği. Bir uzantının arka plan sayfasına yalnızca --silent-debugger-extension-api komut satırı anahtarı kullanıldığında eklenebilir.

  • sessionId

    dize isteğe bağlı

    Chrome Geliştirici Araçları Protokolü oturumunun opak kimliği. tabId, extensionsId veya targetId ile tanımlanan kök oturumdaki bir alt oturumu tanımlar.

  • tabId

    sayı isteğe bağlı

    Hata ayıklamak istediğiniz sekmenin kimliği.

  • targetId

    dize isteğe bağlı

    Hata ayıklama hedefinin opak kimliği.

DetachReason

Chrome 44 ve sonraki sürümler 'nı inceleyin.

Bağlantı sonlandırma nedeni.

Enum

"target_closed"

"canceled_by_user"

TargetInfo

Hata ayıklama hedefi bilgileri

Özellikler

  • ekli

    boolean

    Hata ayıklayıcı zaten eklenmişse doğru değerini döndürür.

  • extensionId

    dize isteğe bağlı

    'background_page' türündeyse tanımlanan uzantı kimliği.

  • faviconUrl

    dize isteğe bağlı

    Hedef site simgesi URL'si.

  • id

    dize

    Hedef kimliği.

  • tabId

    sayı isteğe bağlı

    == 'page' türünde olan sekme kimliği.

  • title

    dize

    Hedef sayfa başlığı.

  • Hedef türü.

  • url

    dize

    Hedef URL.

TargetInfoType

Chrome 44 ve sonraki sürümler 'nı inceleyin.

Hedef türü.

Enum

"page"

"background_page"

"çalışan"

"diğer"

Yöntemler

attach()

Söz 'nı inceleyin.
chrome.debugger.attach(
  target: Debuggee,
  requiredVersion: string,
  callback?: function,
)

Hata ayıklayıcıyı belirtilen hedefe ekler.

Parametreler

  • Eklemek istediğiniz hata ayıklama hedefi.

  • requiredVersion

    dize

    Gerekli hata ayıklama protokolü sürümü ("0.1"). Hata ayıklaması yapılacak işleme yalnızca eşleşen ana sürüm ve daha büyük veya eşit alt sürümlerle eklenebilir. Protokol sürümlerinin listesine buradan ulaşabilirsiniz.

  • geri çağırma

    işlev isteğe bağlı

    callback parametresi şu şekilde görünür:

    () => void

İadeler

  • Taahhüt<void>

    Chrome 96 ve sonraki sürümler 'nı inceleyin.

    Vaatler yalnızca Manifest V3 ve sonraki sürümler için desteklenir. Diğer platformların geri çağırma yapması gerekir.

detach()

Söz 'nı inceleyin.
chrome.debugger.detach(
  target: Debuggee,
  callback?: function,
)

Hata ayıklayıcıyı belirtilen hedeften ayırır.

Parametreler

  • Çıkarmak istediğiniz hata ayıklama hedefi.

  • geri çağırma

    işlev isteğe bağlı

    callback parametresi şu şekilde görünür:

    () => void

İadeler

  • Taahhüt<void>

    Chrome 96 ve sonraki sürümler 'nı inceleyin.

    Vaatler yalnızca Manifest V3 ve sonraki sürümler için desteklenir. Diğer platformların geri çağırma yapması gerekir.

getTargets()

Söz 'nı inceleyin.
chrome.debugger.getTargets(
  callback?: function,
)

Kullanılabilir hata ayıklama hedeflerinin listesini döndürür.

Parametreler

  • geri çağırma

    işlev isteğe bağlı

    callback parametresi şu şekilde görünür:

    (result: TargetInfo[]) => void

    • sonuç

      Kullanılabilir hata ayıklama hedeflerine karşılık gelen TargetInfo nesneleri dizisi.

İadeler

  • Promise&lt;TargetInfo[]&gt;

    Chrome 96 ve sonraki sürümler 'nı inceleyin.

    Vaatler yalnızca Manifest V3 ve sonraki sürümler için desteklenir. Diğer platformların geri çağırma yapması gerekir.

sendCommand()

Söz 'nı inceleyin.
chrome.debugger.sendCommand(
  target: DebuggerSession,
  method: string,
  commandParams?: object,
  callback?: function,
)

Verilen komutu hata ayıklama hedefine gönderir.

Parametreler

  • Komutu göndermek istediğiniz hata ayıklama hedefi.

  • method

    dize

    Yöntem adı. Uzaktan hata ayıklama protokolü tarafından tanımlanan yöntemlerden biri olmalıdır.

  • commandParams

    nesne isteğe bağlı

    İstek parametrelerine sahip JSON nesnesi. Bu nesne, belirtilen yöntem için uzaktan hata ayıklama parametreleri şemasına uymalıdır.

  • geri çağırma

    işlev isteğe bağlı

    callback parametresi şu şekilde görünür:

    (result?: object) => void

    • sonuç

      nesne isteğe bağlı

      Yanıtı içeren JSON nesnesi. Yanıtın yapısı, yöntem adına göre değişir ve "iadeler" ile tanımlanır. özelliğini kullanın.

İadeler

  • Promise&lt;object | tanımlanmadı>

    Chrome 96 ve sonraki sürümler 'nı inceleyin.

    Vaatler yalnızca Manifest V3 ve sonraki sürümler için desteklenir. Diğer platformların geri çağırma yapması gerekir.

Etkinlikler

onDetach

chrome.debugger.onDetach.addListener(
  callback: function,
)

Tarayıcı, sekmeyle ilgili hata ayıklama oturumunu sonlandırdığında tetiklenir. Bu durum, sekme kapatıldığında veya ekteki sekme için Chrome Geliştirici Araçları çağrılırken gerçekleşir.

Parametreler

onEvent

chrome.debugger.onEvent.addListener(
  callback: function,
)

Hedef sorunları enstrümantasyon etkinliği için hata ayıklama işleminde her seferinde tetiklenir.

Parametreler

  • geri çağırma

    işlev

    callback parametresi şu şekilde görünür:

    (source: DebuggerSession, method: string, params?: object) => void