refresh date: 2026-09-25 robots: noindex
Açıklama
chrome.debugger API, Chrome'un uzaktan hata ayıklama protokolü için alternatif bir aktarım görevi görür. Ağ etkileşimini ölçmek, JavaScript'te hata ayıklamak, DOM ve CSS'yi değiştirmek ve daha fazlası için chrome.debugger simgesini kullanarak bir veya daha fazla sekmeye bağlanın. sendCommand içeren sekmeleri hedeflemek ve onEvent geri çağırmalarından gelen etkinlikleri tabId ile yönlendirmek için Debuggee özelliğini tabId kullanın.
İzinler
debuggerGüvenlik Notu
Güvenlik nedeniyle chrome.debugger API, tüm Chrome Geliştirici Araçları Protokol Alanları'na erişim sağlamaz. Kullanılabilir alanlar: Accessibility,
Audits, CacheStorage, Console,
CSS, Database, Debugger, DOM,
DOMDebugger, DOMSnapshot,
Emulation, Fetch, IO, Input,
Inspector, Log, Network, Overlay,
Page, Performance,
Runtime, Storage, Target, Tracing,
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 deposundan hata ayıklayıcı API örneğini yükleyin.
Türler
Debuggee
Hata ayıklanan program tanımlayıcısı. tabId, extensionId veya targetId belirtilmelidir
Özellikler
-
extensionId
dize isteğe bağlı
Hata ayıklamayı planladığınız uzantının kimliği. Bir uzantı arka plan sayfasına ekleme yalnızca
--silent-debugger-extension-apikomut satırı anahtarı kullanıldığında mümkündür. -
tabId
number isteğe bağlı
Hata ayıklamasını yapmak istediğiniz sekmenin kimliği.
-
targetId
dize isteğe bağlı
Hata ayıklama hedefinin opak kimliği.
DebuggerSession
Hata ayıklayıcı oturumu tanımlayıcısı. tabId, extensionId veya targetId değerlerinden biri belirtilmelidir. Ayrıca, isteğe bağlı bir sessionId de sağlanabilir. onEvent öğesinden gönderilen bağımsız değişkenler için sessionId belirtilmişse etkinlik, kök hata ayıklama oturumu içindeki bir alt protokol oturumundan geliyor demektir. sendCommand'ye iletilirken sessionId belirtilirse kök hata ayıklanan oturumdaki bir alt protokol oturumunu hedefler.
Özellikler
-
extensionId
dize isteğe bağlı
Hata ayıklamayı planladığınız uzantının kimliği. Bir uzantı arka plan sayfasına ekleme yalnızca
--silent-debugger-extension-apikomut satırı anahtarı kullanıldığında mümkündür. -
sessionId
dize isteğe bağlı
Chrome Geliştirici Araçları Protokolü oturumunun opak kimliği. tabId, extensionId veya targetId ile tanımlanan kök oturumdaki bir alt oturumu tanımlar.
-
tabId
number isteğe bağlı
Hata ayıklamasını yapmak istediğiniz sekmenin kimliği.
-
targetId
dize isteğe bağlı
Hata ayıklama hedefinin opak kimliği.
DetachReason
Bağlantının sonlandırılma nedeni.
Enum
"target_closed"
"canceled_by_user"
TargetInfo
Hata ayıklama hedef bilgileri
Özellikler
-
ekli
boole
Hata ayıklayıcı zaten eklenmişse doğru değerini döndürür.
-
extensionId
dize isteğe bağlı
Tür = "background_page" ise tanımlanan uzantı kimliği.
-
faviconUrl
dize isteğe bağlı
Hedef site simgesi URL'si.
-
id
dize
Hedef kimliği.
-
tabId
number isteğe bağlı
Tür == "page" ise tanımlanan 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"
"worker"
"diğer"
Yöntemler
attach()
chrome.debugger.attach(
target: Debuggee,
requiredVersion: string,
callback?: function,
): Promise<void>
Hata ayıklayıcıyı belirtilen hedefe ekler.
Parametreler
-
target
Eklemek istediğiniz hata ayıklama hedefi.
-
requiredVersion
dize
Gerekli hata ayıklama protokolü sürümü ("0.1"). Yalnızca eşleşen ana sürüme ve daha büyük veya eşit alt sürüme sahip olanlar hata ayıklanan işleme eklenebilir. Protokol sürümlerinin listesini buradan edinebilirsiniz.
-
callback
işlev isteğe bağlı
callbackparametresi şu şekilde görünür:() => void
İadeler
-
Promise<void>
Chrome 96 ve sonraki sürümlerEkleme işlemi başarılı olduğunda veya başarısız olduğunda çözülür. Promise, değer olmadan çözümlenir. Ekleme işlemi başarısız olursa söz reddedilir.
Promises yalnızca Manifest V3 ve sonraki sürümlerde desteklenir. Diğer platformlarda geri çağırmalar kullanılmalıdır.
detach()
chrome.debugger.detach(
target: Debuggee,
callback?: function,
): Promise<void>
Hata ayıklayıcıyı belirtilen hedeften ayırır.
Parametreler
-
target
Ayrılmak istediğiniz hata ayıklama hedefi.
-
callback
işlev isteğe bağlı
callbackparametresi şu şekilde görünür:() => void
İadeler
-
Promise<void>
Chrome 96 ve sonraki sürümlerAyırma işlemi başarılı olduğunda veya başarısız olduğunda çözülür. Promise, değer olmadan çözümlenir. Ayırma işlemi başarısız olursa söz reddedilir.
Promises yalnızca Manifest V3 ve sonraki sürümlerde desteklenir. Diğer platformlarda geri çağırmalar kullanılmalıdır.
getTargets()
chrome.debugger.getTargets(
callback?: function,
): Promise<TargetInfo[]>
Kullanılabilir hata ayıklama hedeflerinin listesini döndürür.
Parametreler
-
callback
işlev isteğe bağlı
callbackparametresi ş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ümlerPromises yalnızca Manifest V3 ve sonraki sürümlerde desteklenir. Diğer platformlarda geri çağırmalar kullanılmalıdır.
sendCommand()
chrome.debugger.sendCommand(
target: DebuggerSession,
method: string,
commandParams?: object,
callback?: function,
): Promise<object | undefined>
Belirtilen komutu hata ayıklama hedefine gönderir.
Parametreler
-
target
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
object isteğe bağlı
İstek parametrelerini içeren JSON nesnesi. Bu nesne, belirli bir yöntem için uzaktan hata ayıklama parametreleri şemasına uygun olmalıdır.
-
callback
işlev isteğe bağlı
callbackparametresi şu şekilde görünür:(result?: object) => void
-
sonuç
object 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 uzaktan hata ayıklama protokolündeki komut açıklamasının "returns" özelliğiyle tanımlanır.
-
İadeler
-
Promise<object | undefined>
Chrome 96 ve sonraki sürümlerYanıt gövdesi. İleti yayınlanırken bir hata oluşursa söz reddedilir.
Promises yalnızca Manifest V3 ve sonraki sürümlerde desteklenir. Diğer platformlarda geri çağırmalar kullanılmalıdır.
Etkinlikler
onDetach
chrome.debugger.onDetach.addListener(
callback: function,
)
Tarayıcı, sekme için hata ayıklama oturumunu sonlandırdığında tetiklenir. Bu durum, sekme kapatıldığında veya ekli sekme için Chrome Geliştirici Araçları çağrıldığında meydana gelir.
Parametreler
-
callback
işlev
callbackparametresi şu şekilde görünür:(source: Debuggee, reason: DetachReason) => void
-
kaynak
-
neden
-
onEvent
chrome.debugger.onEvent.addListener(
callback: function,
)
Hata ayıklama hedefi, enstrümantasyon etkinliğini her yayınladığında tetiklenir.
Parametreler
-
callback
işlev
callbackparametresi şu şekilde görünür:(source: DebuggerSession, method: string, params?: object) => void
-
kaynak
-
method
dize
-
params
object isteğe bağlı
-