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, Gİ, Giriş,
İnceleyici, Günlük, Ağ, 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
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
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ığı.
-
tür
Hedef türü.
-
url
dize
Hedef URL.
TargetInfoType
Hedef türü.
Enum
"page"
"background_page"
"çalışan"
"diğer"
Yöntemler
attach()
chrome.debugger.attach(
target: Debuggee,
requiredVersion: string,
callback?: function,
)
Hata ayıklayıcıyı belirtilen hedefe ekler.
Parametreler
-
hedef
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()
chrome.debugger.detach(
target: Debuggee,
callback?: function,
)
Hata ayıklayıcıyı belirtilen hedeften ayırır.
Parametreler
-
hedef
Çı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()
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<TargetInfo[]>
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()
chrome.debugger.sendCommand(
target: DebuggerSession,
method: string,
commandParams?: object,
callback?: function,
)
Verilen komutu hata ayıklama hedefine gönderir.
Parametreler
-
hedef
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<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
-
geri çağırma
işlev
callback
parametresi şu şekilde görünür:(source: Debuggee, reason: DetachReason) => void
-
source
-
neden
-
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
-
source
-
method
dize
-
parametreler
nesne isteğe bağlı
-