refresh date: 2026-09-25 robots: noindex
Açıklama
Trafiği gözlemleyip analiz etmek ve aktarım halindeki istekleri yakalamak, engellemek veya değiştirmek için chrome.webRequest API'sini kullanın.
İzinler
webRequestManifest
Web isteği API'sini kullanmak için uzantı manifestinde "webRequest" iznini ve gerekli ana makine izinlerini beyan etmeniz gerekir. Bir alt kaynak isteğini yakalamak için uzantının hem istenen URL'ye hem de başlatıcısına erişimi olmalıdır. Örneğin:
{
"name": "My extension",
...
"permissions": [
"webRequest"
],
"host_permissions": [
"*://*.google.com/*"
],
...
}
Chrome 108'den itibaren, "webRequest" ve "webRequestAuthProvider" izinlerini kullanıyorsanız onAuthRequired etkinlikleri için eşzamansız olarak kimlik bilgileri sağlayabilirsiniz.
İsteklerin yaşam döngüsü
Web isteği API'si, bir web isteğinin yaşam döngüsünü izleyen bir dizi etkinlik tanımlar. Trafiği gözlemlemek ve analiz etmek için bu etkinlikleri kullanabilirsiniz. Belirli eşzamanlı etkinlikler, bir isteği engellemenize, durdurmanıza veya değiştirmenize olanak tanır.
Başarılı isteklerin etkinlik yaşam döngüsü aşağıda gösterilmiş ve ardından etkinlik tanımları verilmiştir:

onBeforeRequest(isteğe bağlı olarak eşzamanlı)- Bir istek gerçekleşmek üzereyken tetiklenir. Bu etkinlik, herhangi bir TCP bağlantısı kurulmadan önce gönderilir ve istekleri iptal etmek veya yönlendirmek için kullanılabilir.
onBeforeSendHeaders(isteğe bağlı olarak eşzamanlı)- Bir istek gerçekleşmek üzereyken ve ilk üstbilgiler hazırlandığında tetiklenir. Etkinlik, uzantıların istek başlıklarını (*) eklemesine, değiştirmesine ve silmesine olanak tanır.
onBeforeSendHeadersetkinliği tüm abonelere iletilir. Bu nedenle, farklı aboneler isteği değiştirmeye çalışabilir. Bunun nasıl ele alındığını öğrenmek için Uygulama ayrıntıları bölümüne bakın. Bu etkinlik, isteği iptal etmek için kullanılabilir. onSendHeaders- Tüm uzantılar istek başlıklarını değiştirme fırsatı bulduktan sonra tetiklenir ve son (*) sürümü sunar. Etkinlik, üstbilgiler ağa gönderilmeden önce tetiklenir. Bu etkinlik bilgilendirme amaçlıdır ve eşzamansız olarak işlenir. İsteğin değiştirilmesine veya iptal edilmesine izin vermez.
onHeadersReceived(isteğe bağlı olarak eşzamanlı)- Bir HTTP(S) yanıt başlığı her alındığında tetiklenir. Yönlendirmeler ve kimlik doğrulama istekleri nedeniyle bu durum istek başına birden çok kez gerçekleşebilir. Bu etkinlik, uzantıların gelen Content-Type başlıkları gibi yanıt başlıklarını eklemesine, değiştirmesine ve silmesine olanak tanır. Önbelleğe alma yönergeleri bu etkinlik tetiklenmeden önce işlendiğinden Cache-Control gibi başlıkların değiştirilmesi tarayıcının önbelleğini etkilemez. Ayrıca isteği iptal etmenize veya yönlendirmenize olanak tanır.
onAuthRequired(isteğe bağlı olarak eşzamanlı)- Bir istek için kullanıcının kimlik doğrulaması gerektiğinde tetiklenir. Bu etkinlik, kimlik doğrulama bilgileri sağlamak için eşzamanlı olarak işlenebilir. Uzantıların geçersiz kimlik bilgileri sağlayabileceğini unutmayın. Geçersiz kimlik bilgilerini tekrar tekrar girerek sonsuz döngüye girmemeye dikkat edin. Bu yöntem, isteği iptal etmek için de kullanılabilir.
onBeforeRedirect- Yönlendirme yürütülmek üzereyken tetiklenir. Yönlendirme, bir HTTP yanıt kodu veya bir uzantı tarafından tetiklenebilir. Bu etkinlik bilgilendirme amaçlıdır ve eşzamansız olarak işlenir. İsteği değiştirmenize veya iptal etmenize izin vermez.
onResponseStarted- Yanıt gövdesinin ilk baytı alındığında tetiklenir. HTTP istekleri için bu, durum satırı ve yanıt başlıklarının kullanılabilir olduğu anlamına gelir. Bu etkinlik bilgilendirme amaçlıdır ve eşzamansız olarak işlenir. İsteği değiştirmenize veya iptal etmenize izin vermez.
onCompleted- Bir istek başarıyla işlendiğinde tetiklenir.
onErrorOccurred- Bir istek başarıyla işlenemediğinde tetiklenir.
Web isteği API'si, her istek için son etkinlik olarak onCompleted veya onErrorOccurred etkinliğinin tetikleneceğini garanti eder. Bunun tek bir istisnası vardır: Bir istek data:// URL'sine yönlendirilirse bildirilen son etkinlik onBeforeRedirect olur.
* Web isteği API'sinin, uzantıya ağ yığınının bir soyutlamasını sunduğunu unutmayın. Dahili olarak, bir URL isteği birkaç HTTP isteğine bölünebilir (örneğin, büyük bir dosyadan tek tek bayt aralıklarını almak için) veya ağ ile iletişim kurmadan ağ yığını tarafından işlenebilir. Bu nedenle API, ağa gönderilen nihai HTTP üstbilgilerini sağlamaz. Örneğin, önbelleğe alma ile ilgili tüm üstbilgiler uzantı tarafından görülemez.
Aşağıdaki başlıklar şu anda onBeforeSendHeaders etkinliğine sağlanmıyor. Bu listenin eksiksiz veya kararlı olduğu garanti edilmez.
- Yetkilendirme
- Önbellek-Denetimi
- Bağlantı
- Content-Length
- Ana makine
- If-Modified-Since
- If-None-Match
- If-Range
- Kısmi Veriler
- Pragma
- Proxy-Authorization
- Proxy-Connection
- Transfer-Encoding
Chrome 79'dan itibaren istek başlığı değişiklikleri, merkezler arası kaynak paylaşımı (CORS) kontrollerini etkiler. Çapraz kaynak istekleri için değiştirilen başlıklar ölçütleri karşılamıyorsa sunucuya bu tür başlıkların kabul edilip edilemeyeceğini sormak için bir CORS ön kontrolü gönderilir. Başlıkları CORS protokolünü ihlal edecek şekilde değiştirmeniz gerekiyorsa opt_extraInfoSpec içinde 'extraHeaders' değerini belirtmeniz gerekir. Öte yandan, yanıt başlığı değişiklikleri CORS kontrollerini yanıltmak için kullanılamaz. CORS protokolünü aldatmanız gerekiyorsa yanıt değişiklikleri için 'extraHeaders' değerini de belirtmeniz gerekir.
Chrome 79'dan itibaren webRequest API, varsayılan olarak CORS ön kontrol isteklerini ve yanıtlarını engellemez. İstek URL'si için CORS ön kontrolü, istek URL'si için opt_extraInfoSpec içinde 'extraHeaders' belirtilen bir dinleyici varsa uzantı tarafından görülebilir.
onBeforeRequest, Chrome 79'dan itibaren 'extraHeaders' da alabilir.
Chrome 79'dan itibaren aşağıdaki istek başlığı sağlanmaz ve opt_extraInfoSpec içinde 'extraHeaders' belirtilmeden değiştirilemez veya kaldırılamaz:
- Köken
Chrome 72'den itibaren, Çapraz Kaynak Okuma Engelleme (CORB) yanıtı engellemeden önce yanıtları değiştirmeniz gerekiyorsa opt_extraInfoSpec içinde 'extraHeaders' değerini belirtmeniz gerekir.
Chrome 72'den itibaren aşağıdaki istek başlıkları sağlanmaz ve opt_extraInfoSpec içinde 'extraHeaders' belirtilmeden değiştirilemez veya kaldırılamaz:
- Accept-Language
- Accept-Encoding
- Başvuran
- Çerez
Chrome 72'den itibaren Set-Cookie yanıt başlığı sağlanmaz ve opt_extraInfoSpec içinde 'extraHeaders' belirtilmeden değiştirilemez veya kaldırılamaz.
Chrome 89'dan itibaren X-Frame-Options yanıt başlığı, opt_extraInfoSpec içinde 'extraHeaders' belirtilmeden etkili bir şekilde değiştirilemez veya kaldırılamaz.
webRequest API, yalnızca uzantının ana makine izinleri kapsamında görme iznine sahip olduğu istekleri gösterir. Ayrıca, yalnızca şu şemalara erişilebilir: http://, https://, ftp://, file://, ws:// (Chrome 58'den itibaren), wss:// (Chrome 58'den itibaren), urn: (Chrome 91'den itibaren) veya chrome-extension://. Ayrıca, yukarıdaki şemalardan birini kullanan URL'lere sahip belirli istekler de gizlenir. Bunlar arasında, other_extension_id değerinin isteği işleyecek uzantının kimliği olmadığı chrome-extension://other_extension_id, https://www.google.com/chrome ve tarayıcı işlevselliği için temel olan diğer hassas istekler yer alır. Ayrıca, kilitlenmeleri önlemek için uzantınızdan gelen eşzamanlı XMLHttpRequests, etkinlik işleyicileri engellemekten gizlenir. Desteklenen şemaların bazılarında, ilgili protokolün yapısı nedeniyle kullanılabilir etkinlik grubunun sınırlı olabileceğini unutmayın. Örneğin, file: şeması için yalnızca onBeforeRequest, onResponseStarted, onCompleted ve onErrorOccurred gönderilebilir.
Chrome 58'den itibaren webRequest API, WebSocket el sıkışma isteğini yakalamayı destekler. El sıkışma işlemi bir HTTP yükseltme isteği aracılığıyla yapıldığından akışı, HTTP odaklı webRequest modeline uyar. API'nin şunları engellemediğini unutmayın:
- Kurulu bir WebSocket bağlantısı üzerinden gönderilen bağımsız mesajlar.
- WebSocket bağlantısı kapatılıyor.
WebSocket istekleri için yönlendirmeler desteklenmez.
Chrome 72'den itibaren, bir uzantı yalnızca hem istenen URL hem de isteği başlatan için ana makine izinlerine sahipse bir isteği kesebilir.
Chrome 96'dan itibaren webRequest API, HTTP/3 üzerinden WebTransport el sıkışma isteğini yakalamayı destekler. El sıkışma işlemi bir HTTP CONNECT isteği aracılığıyla yapıldığından akışı, HTTP odaklı webRequest modeline uyar. Unutmayın:
- Oturum oluşturulduktan sonra uzantılar, webRequest API aracılığıyla oturumu gözlemleyemez veya oturuma müdahale edemez.
onBeforeSendHeadersiçinde HTTP istek başlıklarını değiştirme işlemi yoksayılır.- HTTP/3 üzerinden WebTransport'ta yönlendirmeler ve kimlik doğrulamalar desteklenmez.
Kavramlar
Aşağıdaki bölümlerde açıklandığı gibi, web isteği API'sindeki etkinlikler istek kimliklerini kullanır ve etkinlik işleyicileri kaydederken isteğe bağlı olarak filtreler ve ek bilgiler belirtebilirsiniz.
İstek kimlikleri
Her istek, bir istek kimliğiyle tanımlanır. Bu kimlik, bir tarayıcı oturumu ve uzantı bağlamı içinde benzersizdir. Bir isteğin yaşam döngüsü boyunca sabit kalır ve aynı istekle ilgili etkinlikleri eşleştirmek için kullanılabilir. HTTP yönlendirmesi veya HTTP kimlik doğrulaması durumunda, birden fazla HTTP isteğinin tek bir web isteğiyle eşlendiğini unutmayın.
Etkinlik işleyicileri kaydetme
Bir web isteği için etkinlik işleyici kaydetmek üzere normal addListener() işlevinin bir varyasyonunu kullanırsınız. Geri çağırma işlevi belirtmenin yanı sıra bir filtre bağımsız değişkeni belirtmeniz gerekir. İsteğe bağlı olarak ek bilgi bağımsız değişkeni de belirtebilirsiniz.
Web isteği API'sinin addListener() için üç bağımsız değişkeni aşağıdaki tanımlara sahiptir:
var callback = function(details) {...};
var filter = {...};
var opt_extraInfoSpec = [...];
onBeforeRequest etkinliğini dinlemeyle ilgili bir örnek aşağıda verilmiştir:
chrome.webRequest.onBeforeRequest.addListener(
callback, filter, opt_extraInfoSpec);
Her addListener() çağrısı, ilk parametre olarak zorunlu bir geri çağırma işlevi alır. Bu geri çağırma işlevine, geçerli URL isteğiyle ilgili bilgileri içeren bir sözlük iletilir. Bu sözlükteki bilgiler, belirli etkinlik türüne ve opt_extraInfoSpec içeriğine bağlıdır.
İsteğe bağlı opt_extraInfoSpec dizisi 'blocking' dizesini içeriyorsa (yalnızca belirli etkinlikler için izin verilir) geri çağırma işlevi eşzamanlı olarak işlenir. Bu, geri çağırma işlevi dönene kadar isteğin engellendiği anlamına gelir. Bu durumda geri çağırma, isteğin yaşam döngüsünün devamını belirleyen bir webRequest.BlockingResponse döndürebilir. Bağlama bağlı olarak bu yanıt, bir isteğin iptal edilmesine veya yönlendirilmesine (onBeforeRequest), bir isteğin iptal edilmesine veya üstbilgilerin değiştirilmesine (onBeforeSendHeaders, onHeadersReceived) ve bir isteğin iptal edilmesine veya kimlik doğrulama bilgilerinin sağlanmasına (onAuthRequired) olanak tanır.
İsteğe bağlı opt_extraInfoSpec dizisi bunun yerine 'asyncBlocking' dizesini içeriyorsa (yalnızca onAuthRequired için izin verilir) uzantı, webRequest.BlockingResponse öğesini eşzamansız olarak oluşturabilir.
webRequest.RequestFilter filter, etkinliklerin tetiklendiği isteklerin çeşitli boyutlarda sınırlandırılmasına olanak tanır:
- URL'ler
*://www.google.com/foo*bargibi URL kalıpları.- Türler
main_frame(üst düzey çerçeve için yüklenen doküman),sub_frame(yerleştirilmiş çerçeve için yüklenen doküman) veimage(web sitesindeki resim) gibi istek türleri.webRequest.RequestFiltersayfasına bakın.- Sekme kimliği
- Bir sekmenin tanımlayıcısı.
- Pencere kimliği
- Pencerenin tanımlayıcısı.
Etkinlik türüne bağlı olarak, istekle ilgili ek bilgi istemek için opt_extraInfoSpec içinde dize belirtebilirsiniz. Bu, yalnızca açıkça istendiğinde isteğin verileri hakkında ayrıntılı bilgi sağlamak için kullanılır.
Uygulama ayrıntıları
Web isteği API'sini kullanan bir uzantı geliştirirken uygulamayla ilgili birkaç ayrıntıyı anlamak önemli olabilir:
web_accessible_resources
Bir uzantı, herkese açık bir kaynak isteğini web'den erişilemeyen bir kaynağa yönlendirmek için webRequest API'lerini kullandığında engellenir ve hataya neden olur. Yukarıdaki durum, web'den erişilemeyen kaynağın sahibi yönlendiren uzantı olsa bile geçerlidir. declarativeWebRequest API'leriyle kullanılacak kaynakları bildirmek için "web_accessible_resources" dizisi, burada açıklandığı şekilde manifest dosyasında bildirilmeli ve doldurulmalıdır.
Çatışma çözümü
Web isteği API'sinin mevcut uygulamasında, en az bir uzantı isteğin iptal edilmesini talimat verirse istek iptal edilmiş sayılır. Bir uzantı bir isteği iptal ederse tüm uzantılar bir onErrorOccurred etkinliğiyle bilgilendirilir. Aynı anda yalnızca bir uzantı bir isteği yönlendirebilir veya bir üstbilgiyi değiştirebilir. İsteği birden fazla uzantı değiştirmeye çalışırsa en son yüklenen uzantı geçerli olur ve diğerleri yok sayılır. Değiştirme veya yönlendirme talimatı yok sayılan uzantılara bildirim gönderilmez.
Önbelleğe alma
Chrome, disk önbelleği ve çok hızlı bir RAM önbelleği olmak üzere iki önbellek kullanır. Bellek içi RAM önbelleğinin ömrü, oluşturma işleminin ömrüne bağlıdır. Bu da kabaca bir sekmeye karşılık gelir.
RAM önbelleğinden yanıtlanan istekler, web isteği API'si tarafından görülemez. Bir istek işleyici davranışını değiştirirse (örneğin, isteklerin engellenmesine göre davranış) basit bir sayfa yenileme bu değiştirilen davranışı dikkate almayabilir. Davranış değişikliğinin uygulanması için handlerBehaviorChanged() yöntemini çağırarak RAM önbelleğini temizleyin. Ancak bunu sık sık yapmayın. Önbelleği temizlemek çok maliyetli bir işlemdir. Bir etkinlik işleyiciyi kaydettikten veya kaydını iptal ettikten sonra handlerBehaviorChanged() yöntemini çağırmanız gerekmez.
Zaman damgaları
Web isteği etkinliklerinin timestamp özelliğinin yalnızca dahili olarak tutarlı olduğu garanti edilir.
Bir etkinliği başka bir etkinlikle karşılaştırdığınızda aralarındaki doğru farkı elde edersiniz ancak bunları uzantıdaki geçerli zamanla karşılaştırdığınızda (ör. (new Date()).getTime() aracılığıyla) beklenmedik sonuçlar elde edebilirsiniz.
Hata işleme
Geçersiz bağımsız değişkenler içeren bir etkinliği kaydetmeye çalışırsanız JavaScript hatası oluşur ve etkinlik işleyici kaydedilmez. Bir etkinlik işlenirken hata oluşursa veya bir etkinlik işleyici geçersiz bir engelleme yanıtı döndürürse uzantınızın konsoluna bir hata mesajı kaydedilir ve işleyici, ilgili istek için yoksayılır.
Örnekler
Aşağıdaki örnekte, www.evil.com için tüm isteklerin nasıl engelleneceği gösterilmektedir:
chrome.webRequest.onBeforeRequest.addListener(
function(details) {
return {cancel: details.url.indexOf("://www.evil.com/") != -1};
},
{urls: ["<all_urls>"]},
["blocking"]
);
Bu işlev, engelleyici bir etkinlik işleyici kullandığından manifest dosyasında "webRequest" ve "webRequestBlocking" iznini gerektirir.
Aşağıdaki örnek, aynı hedefe daha verimli bir şekilde ulaşır çünkü www.evil.com için hedeflenmeyen isteklerin uzantıya iletilmesi gerekmez:
chrome.webRequest.onBeforeRequest.addListener(
function(details) { return {cancel: true}; },
{urls: ["*://www.evil.com/*"]},
["blocking"]
);
Aşağıdaki örnekte, User-Agent üstbilgisinin tüm isteklerden nasıl silineceği gösterilmektedir:
chrome.webRequest.onBeforeSendHeaders.addListener(
function(details) {
for (var i = 0; i < details.requestHeaders.length; ++i) {
if (details.requestHeaders[i].name === 'User-Agent') {
details.requestHeaders.splice(i, 1);
break;
}
}
return {requestHeaders: details.requestHeaders};
},
{urls: ["<all_urls>"]},
["blocking", "requestHeaders"]
);
chrome.webRequest API'sini denemek için chrome-extension-samples deposundan webRequest örneğini yükleyin.
Türler
BlockingResponse
"blocking" extraInfoSpec'in uygulandığı etkinlik işleyiciler için değer döndürür. Etkinlik işleyicinin ağ isteklerini değiştirmesine izin verir.
Özellikler
-
authCredentials
isteğe bağlı nesne
Yalnızca onAuthRequired etkinliğine yanıt olarak kullanılır. Ayarlanırsa istek, sağlanan kimlik bilgileri kullanılarak yapılır.
-
şifre
dize
-
kullanıcı adı
dize
-
-
iptal
boole isteğe bağlı
Doğru ise istek iptal edilir. Bu, isteğin gönderilmesini engeller. Bu, onBeforeRequest, onBeforeSendHeaders, onHeadersReceived ve onAuthRequired etkinliklerine yanıt olarak kullanılabilir.
-
redirectUrl
string isteğe bağlı
Yalnızca onBeforeRequest ve onHeadersReceived etkinliklerine yanıt olarak kullanılır. Ayarlanırsa orijinal isteğin gönderilmesi/tamamlanması engellenir ve istek, belirtilen URL'ye yönlendirilir.
data:gibi HTTP olmayan şemalara yönlendirmelere izin verilir. Yönlendirme işlemi tarafından başlatılan yönlendirmeler, yönlendirme için orijinal istek yöntemini kullanır. Bunun bir istisnası vardır: Yönlendirme, onHeadersReceived aşamasında başlatılırsa yönlendirme, alma yöntemi kullanılarak yapılır.ws://vewss://şemalarına sahip URL'lerden yapılan yönlendirmeler yoksayılır. -
requestHeaders
HttpHeaders isteğe bağlı
Yalnızca onBeforeSendHeaders etkinliğine yanıt olarak kullanılır. Ayarlanırsa istek, bu istek başlıklarıyla yapılır.
-
responseHeaders
HttpHeaders isteğe bağlı
Yalnızca onHeadersReceived etkinliğine yanıt olarak kullanılır. Ayarlanırsa sunucunun bunun yerine bu yanıt başlıklarıyla yanıt verdiği varsayılır. Yalnızca çakışma sayısını sınırlamak için üstbilgileri gerçekten değiştirmek istiyorsanız
responseHeadersdöndürün (her istek için yalnızca bir uzantıresponseHeadersdeğiştirebilir).
FormDataItem
Form verileri içinde iletilen verileri içerir. URL ile kodlanmış form için veriler UTF-8 dizesiyse dize olarak, aksi takdirde ArrayBuffer olarak depolanır. Form verileri için ArrayBuffer'dır. Form verileri, yüklenen dosyayı temsil ediyorsa dosya adı sağlanmışsa dosya adını içeren dizedir.
Enum
ArrayBuffer
dize
HttpHeaders
HTTP üstbilgileri dizisi. Her üstbilgi, name anahtarlarını ve value veya binaryValue anahtarlarını içeren bir sözlük olarak temsil edilir.
Tür
object[]
Özellikler
-
binaryValue
number[] isteğe bağlı
UTF-8 ile temsil edilemiyorsa HTTP üstbilgisinin değeri, ayrı bayt değerleri (0..255) olarak depolanır.
-
ad
dize
HTTP üstbilgisinin adı.
-
value
string isteğe bağlı
UTF-8 ile temsil edilebiliyorsa HTTP üstbilgisinin değeri.
IgnoredActionType
Enum
"redirect"
"request_headers"
"response_headers"
"auth_credentials"
OnAuthRequiredOptions
Enum
"responseHeaders"
Yanıt başlıklarının etkinliğe dahil edilmesi gerektiğini belirtir.
"blocking"
İsteğin, geri çağırma işlevi döndürülene kadar engellendiğini belirtir.
"asyncBlocking"
Geri çağırma işlevinin eşzamansız olarak işlendiğini belirtir.
"extraHeaders"
Başlıkların, Merkezler Arası Kaynak Paylaşımı'nı (CORS) ihlal edebileceğini belirtir.
OnBeforeRedirectOptions
Enum
"responseHeaders"
Yanıt başlıklarının etkinliğe dahil edilmesi gerektiğini belirtir.
"extraHeaders"
Başlıkların, Merkezler Arası Kaynak Paylaşımı'nı (CORS) ihlal edebileceğini belirtir.
OnBeforeRequestOptions
Enum
"blocking"
İsteğin, geri çağırma işlevi döndürülene kadar engellendiğini belirtir.
"requestBody"
İstek gövdesinin etkinliğe dahil edilmesi gerektiğini belirtir.
"extraHeaders"
Başlıkların, Merkezler Arası Kaynak Paylaşımı'nı (CORS) ihlal edebileceğini belirtir.
OnBeforeSendHeadersOptions
Enum
"requestHeaders"
İstek başlığının etkinliğe dahil edilmesi gerektiğini belirtir.
"blocking"
İsteğin, geri çağırma işlevi döndürülene kadar engellendiğini belirtir.
"extraHeaders"
Başlıkların, Merkezler Arası Kaynak Paylaşımı'nı (CORS) ihlal edebileceğini belirtir.
OnCompletedOptions
Enum
"responseHeaders"
Yanıt başlıklarının etkinliğe dahil edilmesi gerektiğini belirtir.
"extraHeaders"
Başlıkların, Merkezler Arası Kaynak Paylaşımı'nı (CORS) ihlal edebileceğini belirtir.
OnErrorOccurredOptions
Değer
"extraHeaders"
OnHeadersReceivedOptions
Enum
"blocking"
İsteğin, geri çağırma işlevi döndürülene kadar engellendiğini belirtir.
"responseHeaders"
Yanıt başlıklarının etkinliğe dahil edilmesi gerektiğini belirtir.
"extraHeaders"
Başlıkların, Merkezler Arası Kaynak Paylaşımı'nı (CORS) ihlal edebileceğini belirtir.
"securityInfo"
SecurityInfo'nun etkinliğe dahil edilmesi gerektiğini belirtir.
"securityInfoRawDer"
Sertifikaların ham baytlarını içeren SecurityInfo'nun etkinliğe dahil edilmesi gerektiğini belirtir.
OnResponseStartedOptions
Enum
"responseHeaders"
Yanıt başlıklarının etkinliğe dahil edilmesi gerektiğini belirtir.
"extraHeaders"
Başlıkların, Merkezler Arası Kaynak Paylaşımı'nı (CORS) ihlal edebileceğini belirtir.
OnSendHeadersOptions
Enum
"requestHeaders"
İstek başlığının etkinliğe dahil edilmesi gerektiğini belirtir.
"extraHeaders"
Başlıkların, Merkezler Arası Kaynak Paylaşımı'nı (CORS) ihlal edebileceğini belirtir.
RequestFilter
webRequest etkinliklerine uygulanacak filtreleri açıklayan bir nesne.
Özellikler
-
tabId
number isteğe bağlı
-
türler
ResourceType[] isteğe bağlı
İstek türlerinin listesi. Türlerden herhangi biriyle eşleşmeyen istekler filtrelenir.
-
urller
string[]
URL'lerin veya URL kalıplarının listesi. URL'lerin hiçbiriyle eşleşemeyen istekler filtrelenir.
-
windowId
number isteğe bağlı
ResourceType
Enum
"main_frame"
Kaynağı ana çerçeve olarak belirtir.
"sub_frame"
Kaynağı alt çerçeve olarak belirtir.
"stylesheet"
Kaynağı stil sayfası olarak belirtir.
"script"
Kaynağı komut dosyası olarak belirtir.
"image"
Kaynağı resim olarak belirtir.
"font"
Kaynağı yazı tipi olarak belirtir.
"object"
Kaynağı nesne olarak belirtir.
"xmlhttprequest"
Kaynağı XMLHttpRequest olarak belirtir.
"ping"
Kaynağı ping olarak belirtir.
"csp_report"
Kaynağı, İçerik Güvenliği Politikası (İGP) raporu olarak belirtir.
"media"
Kaynağı bir medya nesnesi olarak belirtir.
"websocket"
Kaynağı WebSocket olarak belirtir.
"webbundle"
Kaynağı WebBundle olarak belirtir.
"other"
Kaynağı, listelenen türlere dahil olmayan bir tür olarak belirtir.
SecurityInfo
Özellikler
-
certificates
object[]
Sertifika listesi
-
parmak izi
nesne
Sertifikanın parmak izleri.
-
sha256
dize
Sertifikanın sha256 parmak izi.
-
-
rawDER
ArrayBuffer isteğe bağlı
DER kodlamalı sunucu sertifikasının ham baytları
-
-
durum
dize
Bağlantının durumu. Güvenli, güvenli değil, bozuk değerlerinden biri.
UploadData
Bir URL isteğinde yüklenen verileri içerir.
Özellikler
-
bayt
isteğe bağlı
Verilerin kopyasını içeren bir ArrayBuffer.
-
dosya
string isteğe bağlı
Dosyanın yolunu ve adını içeren bir dize.
Özellikler
MAX_HANDLER_BEHAVIOR_CHANGED_CALLS_PER_10_MINUTES
handlerBehaviorChanged yönteminin 10 dakikalık sürekli aralıklarla çağrılabileceği maksimum sayı. handlerBehaviorChanged, sık sık çağrılmaması gereken pahalı bir işlev çağrısıdır.
Değer
20
Yöntemler
handlerBehaviorChanged()
chrome.webRequest.handlerBehaviorChanged(
callback?: function,
): Promise<void>
Önbelleğe alma nedeniyle yanlış işlem yapılmasını önlemek için webRequest işleyicilerinin davranışı değiştiğinde çağrılması gerekir. Bu işlev çağrısı pahalıdır. Bu yöntemi sık sık çağırmayın.
Parametreler
-
callback
function isteğe bağlı
callbackparametresi şu şekilde görünür:() => void
İadeler
-
Promise<void>
Chrome 116+Promise'ler yalnızca Manifest V3 ve sonraki sürümlerde desteklenir. Diğer platformların geri çağırma işlevlerini kullanması gerekir.
Etkinlikler
onActionIgnored
chrome.webRequest.onActionIgnored.addListener(
callback: function,
)
Bir uzantının ağ isteğinde önerdiği değişiklik yoksayıldığında tetiklenir. Bu durum, diğer uzantılarla çakışma olduğunda ortaya çıkar.
Parametreler
-
callback
işlev
callbackparametresi şu şekilde görünür:(details: object) => void
-
ayrıntılar
nesne
-
işlem
Yok sayılan önerilen işlem.
-
requestId
dize
İsteğin kimliği. İstek kimlikleri, tarayıcı oturumunda benzersizdir. Bu nedenle, aynı isteğin farklı etkinliklerini ilişkilendirmek için kullanılabilirler.
-
-
onAuthRequired
chrome.webRequest.onAuthRequired.addListener(
callback: function,
filter: RequestFilter,
extraInfoSpec?: OnAuthRequiredOptions[],
)
Kimlik doğrulama hatası alındığında tetiklenir. Dinleyicinin üç seçeneği vardır: Kimlik doğrulama bilgileri sağlayabilir, isteği iptal edip hata sayfasını gösterebilir veya sorgulamayla ilgili herhangi bir işlem yapmayabilir. Hatalı kullanıcı kimlik bilgileri sağlanırsa bu yöntem aynı istek için birden fazla kez çağrılabilir. extraInfoSpec parametresinde 'blocking' veya 'asyncBlocking' modlarından yalnızca birinin belirtilmesi gerektiğini unutmayın.
Parametreler
-
callback
işlev
callbackparametresi şu şekilde görünür:(details: object, asyncCallback?: function) => BlockingResponse | undefined
-
ayrıntılar
nesne
-
challenger
nesne
Kimlik doğrulama isteyen sunucu.
-
düzenleyen
dize
-
bağlantı noktası
sayı
-
-
documentId
string isteğe bağlı
Chrome 106+İsteği gönderen dokümanın UUID'si.
-
documentLifecycleChrome 106+
Belgenin içinde bulunduğu yaşam döngüsü.
-
frameId
sayı
0 değeri, isteğin ana çerçevede gerçekleştiğini gösterir. Pozitif bir değer, isteğin gerçekleştiği alt çerçevenin kimliğini gösterir. Bir (alt) çerçevenin dokümanı yüklüyse (
type,main_frameveyasub_frameise)frameId, dış çerçevenin kimliğini değil, bu çerçevenin kimliğini gösterir. Kare kimlikleri bir sekme içinde benzersizdir. -
frameTypeChrome 106+
İsteğin gerçekleştiği kare türü.
-
başlatan
string isteğe bağlı
Chrome 63+İsteğin başlatıldığı kaynak. Bu durum, yönlendirmelerle değişmez. Bu, opak bir kaynaksa "null" dizesi kullanılır.
-
isProxy
boole
Proxy-Authenticate için doğru, WWW-Authenticate için yanlış.
-
method
dize
Standart HTTP yöntemi.
-
parentDocumentId
string isteğe bağlı
Chrome 106+Bu çerçeveye sahip üst dokümanın UUID'si. Üst öğe yoksa bu ayarlanmaz.
-
parentFrameId
sayı
İsteği gönderen çerçeveyi sarmalayan çerçevenin kimliği. Üst çerçeve yoksa -1 olarak ayarlanır.
-
erişim alanı
string isteğe bağlı
Sunucu tarafından sağlanan kimlik doğrulama alanı (varsa).
-
requestId
dize
İsteğin kimliği. İstek kimlikleri, tarayıcı oturumunda benzersizdir. Bu nedenle, aynı isteğin farklı etkinliklerini ilişkilendirmek için kullanılabilirler.
-
responseHeaders
HttpHeaders isteğe bağlı
Bu yanıtla birlikte alınan HTTP yanıt başlıkları.
-
şema
dize
Kimlik doğrulama düzeni (ör. Temel veya Özet).
-
statusCode
sayı
Chrome 43 ve sonraki sürümlerSunucu tarafından döndürülen standart HTTP durum kodu.
-
statusLine
dize
Yanıtın HTTP durum satırı veya HTTP/0.9 yanıtları için "HTTP/0.9 200 OK" dizesi (yani durum satırı olmayan yanıtlar) ya da başlık yoksa boş bir dize.
-
tabId
sayı
İsteğin gerçekleştiği sekmenin kimliği. İstek bir sekmeyle ilgili değilse -1 olarak ayarlanır.
-
timeStamp
sayı
Bu sinyalin tetiklendiği zaman (epoch'tan bu yana geçen milisaniye cinsinden).
-
tür
İstenen kaynağın nasıl kullanılacağı.
-
url
dize
-
-
asyncCallback
function isteğe bağlı
Chrome 58 ve sonraki sürümlerasyncCallbackparametresi şu şekilde görünür:(response: BlockingResponse) => void
-
gönderin
-
-
returns
BlockingResponse | undefined
"extraInfoSpec" parametresinde "blocking" belirtilirse etkinlik işleyici bu türde bir nesne döndürmelidir.
-
-
filtre
-
extraInfoSpec
OnAuthRequiredOptions[] isteğe bağlı
onBeforeRedirect
chrome.webRequest.onBeforeRedirect.addListener(
callback: function,
filter: RequestFilter,
extraInfoSpec?: OnBeforeRedirectOptions[],
)
Sunucu tarafından başlatılan bir yönlendirme gerçekleşmek üzereyken tetiklenir.
Parametreler
-
callback
işlev
callbackparametresi şu şekilde görünür:(details: object) => void
-
ayrıntılar
nesne
-
documentId
string isteğe bağlı
Chrome 106+İsteği gönderen dokümanın UUID'si.
-
documentLifecycleChrome 106+
Belgenin içinde bulunduğu yaşam döngüsü.
-
frameId
sayı
0 değeri, isteğin ana çerçevede gerçekleştiğini gösterir. Pozitif bir değer, isteğin gerçekleştiği alt çerçevenin kimliğini gösterir. Bir (alt) çerçevenin dokümanı yüklüyse (
type,main_frameveyasub_frameise)frameId, dış çerçevenin kimliğini değil, bu çerçevenin kimliğini gösterir. Kare kimlikleri bir sekme içinde benzersizdir. -
frameTypeChrome 106+
İsteğin gerçekleştiği kare türü.
-
fromCache
boole
Bu yanıtın disk önbelleğinden alınıp alınmadığını gösterir.
-
başlatan
string isteğe bağlı
Chrome 63+İsteğin başlatıldığı kaynak. Bu durum, yönlendirmelerle değişmez. Bu, opak bir kaynaksa "null" dizesi kullanılır.
-
ip
string isteğe bağlı
İsteğin gönderildiği sunucu IP adresi. Bunun gerçek bir IPv6 adresi olabileceğini unutmayın.
-
method
dize
Standart HTTP yöntemi.
-
parentDocumentId
string isteğe bağlı
Chrome 106+Bu çerçeveye sahip üst dokümanın UUID'si. Üst öğe yoksa bu ayarlanmaz.
-
parentFrameId
sayı
İsteği gönderen çerçeveyi sarmalayan çerçevenin kimliği. Üst çerçeve yoksa -1 olarak ayarlanır.
-
redirectUrl
dize
Yeni URL.
-
requestId
dize
İsteğin kimliği. İstek kimlikleri, tarayıcı oturumunda benzersizdir. Bu nedenle, aynı isteğin farklı etkinliklerini ilişkilendirmek için kullanılabilirler.
-
responseHeaders
HttpHeaders isteğe bağlı
Bu yönlendirmeyle birlikte alınan HTTP yanıt başlıkları.
-
statusCode
sayı
Sunucu tarafından döndürülen standart HTTP durum kodu.
-
statusLine
dize
Yanıtın HTTP durum satırı veya HTTP/0.9 yanıtları için "HTTP/0.9 200 OK" dizesi (yani durum satırı olmayan yanıtlar) ya da başlık yoksa boş bir dize.
-
tabId
sayı
İsteğin gerçekleştiği sekmenin kimliği. İstek bir sekmeyle ilgili değilse -1 olarak ayarlanır.
-
timeStamp
sayı
Bu sinyalin tetiklendiği zaman (epoch'tan bu yana geçen milisaniye cinsinden).
-
tür
İstenen kaynağın nasıl kullanılacağı.
-
url
dize
-
-
-
filtre
-
extraInfoSpec
OnBeforeRedirectOptions[] isteğe bağlı
onBeforeRequest
chrome.webRequest.onBeforeRequest.addListener(
callback: function,
filter: RequestFilter,
extraInfoSpec?: OnBeforeRequestOptions[],
)
Bir istek gerçekleşmek üzereyken tetiklenir.
Parametreler
-
callback
işlev
callbackparametresi şu şekilde görünür:(details: object) => BlockingResponse | undefined
-
ayrıntılar
nesne
-
documentId
string isteğe bağlı
Chrome 106+İsteği gönderen dokümanın UUID'si.
-
documentLifecycle
extensionTypes.DocumentLifecycle isteğe bağlı
Chrome 106+Belgenin içinde bulunduğu yaşam döngüsü.
-
frameId
sayı
0 değeri, isteğin ana çerçevede gerçekleştiğini gösterir. Pozitif bir değer, isteğin gerçekleştiği alt çerçevenin kimliğini gösterir. Bir (alt) çerçevenin dokümanı yüklüyse (
type,main_frameveyasub_frameise)frameId, dış çerçevenin kimliğini değil, bu çerçevenin kimliğini gösterir. Kare kimlikleri bir sekme içinde benzersizdir. -
frameType
extensionTypes.FrameType isteğe bağlı
Chrome 106+İsteğin gerçekleştiği kare türü.
-
başlatan
string isteğe bağlı
Chrome 63+İsteğin başlatıldığı kaynak. Bu durum, yönlendirmelerle değişmez. Bu, opak bir kaynaksa "null" dizesi kullanılır.
-
method
dize
Standart HTTP yöntemi.
-
parentDocumentId
string isteğe bağlı
Chrome 106+Bu çerçeveye sahip üst dokümanın UUID'si. Üst öğe yoksa bu ayarlanmaz.
-
parentFrameId
sayı
İsteği gönderen çerçeveyi sarmalayan çerçevenin kimliği. Üst çerçeve yoksa -1 olarak ayarlanır.
-
requestBody
isteğe bağlı nesne
HTTP istek gövdesi verilerini içerir. Yalnızca extraInfoSpec, "requestBody" içeriyorsa sağlanır.
-
hata
string isteğe bağlı
İstek gövdesi verileri alınırken karşılaşılan hatalar
-
formData
isteğe bağlı nesne
İstek yöntemi POST ise ve gövde, UTF8'de kodlanmış, multipart/form-data veya application/x-www-form-urlencoded olarak kodlanmış bir anahtar/değer çifti dizisiyse bu sözlük mevcuttur ve her anahtar için o anahtarın tüm değerlerinin listesini içerir. Veriler başka bir medya türündeyse veya hatalı biçimlendirilmişse sözlük mevcut değildir. Bu sözlüğün örnek değeri {'key': ['value1', 'value2']} şeklindedir.
-
raw
UploadData[] isteğe bağlı
İstek yöntemi PUT veya POST ise ve gövde formData'da henüz ayrıştırılmamışsa ayrıştırılmamış istek gövdesi öğeleri bu dizide yer alır.
-
-
requestId
dize
İsteğin kimliği. İstek kimlikleri, tarayıcı oturumunda benzersizdir. Bu nedenle, aynı isteğin farklı etkinliklerini ilişkilendirmek için kullanılabilirler.
-
tabId
sayı
İsteğin gerçekleştiği sekmenin kimliği. İstek bir sekmeyle ilgili değilse -1 olarak ayarlanır.
-
timeStamp
sayı
Bu sinyalin tetiklendiği zaman (epoch'tan bu yana geçen milisaniye cinsinden).
-
tür
İstenen kaynağın nasıl kullanılacağı.
-
url
dize
-
-
returns
BlockingResponse | undefined
"extraInfoSpec" parametresinde "blocking" belirtilirse etkinlik işleyici bu türde bir nesne döndürmelidir.
-
-
filtre
-
extraInfoSpec
OnBeforeRequestOptions[] isteğe bağlı
onBeforeSendHeaders
chrome.webRequest.onBeforeSendHeaders.addListener(
callback: function,
filter: RequestFilter,
extraInfoSpec?: OnBeforeSendHeadersOptions[],
)
İstek başlıkları kullanılabilir olduğunda, HTTP isteği gönderilmeden önce tetiklenir. Bu durum, sunucuyla TCP bağlantısı kurulduktan sonra ancak HTTP verileri gönderilmeden önce gerçekleşebilir.
Parametreler
-
callback
işlev
callbackparametresi şu şekilde görünür:(details: object) => BlockingResponse | undefined
-
ayrıntılar
nesne
-
documentId
string isteğe bağlı
Chrome 106+İsteği gönderen dokümanın UUID'si.
-
documentLifecycleChrome 106+
Belgenin içinde bulunduğu yaşam döngüsü.
-
frameId
sayı
0 değeri, isteğin ana çerçevede gerçekleştiğini gösterir. Pozitif bir değer, isteğin gerçekleştiği alt çerçevenin kimliğini gösterir. Bir (alt) çerçevenin dokümanı yüklüyse (
type,main_frameveyasub_frameise)frameId, dış çerçevenin kimliğini değil, bu çerçevenin kimliğini gösterir. Kare kimlikleri bir sekme içinde benzersizdir. -
frameTypeChrome 106+
İsteğin gerçekleştiği kare türü.
-
başlatan
string isteğe bağlı
Chrome 63+İsteğin başlatıldığı kaynak. Bu durum, yönlendirmelerle değişmez. Bu, opak bir kaynaksa "null" dizesi kullanılır.
-
method
dize
Standart HTTP yöntemi.
-
parentDocumentId
string isteğe bağlı
Chrome 106+Bu çerçeveye sahip üst dokümanın UUID'si. Üst öğe yoksa bu ayarlanmaz.
-
parentFrameId
sayı
İsteği gönderen çerçeveyi sarmalayan çerçevenin kimliği. Üst çerçeve yoksa -1 olarak ayarlanır.
-
requestHeaders
HttpHeaders isteğe bağlı
Bu istekle birlikte gönderilecek HTTP istek başlıkları.
-
requestId
dize
İsteğin kimliği. İstek kimlikleri, tarayıcı oturumunda benzersizdir. Bu nedenle, aynı isteğin farklı etkinliklerini ilişkilendirmek için kullanılabilirler.
-
tabId
sayı
İsteğin gerçekleştiği sekmenin kimliği. İstek bir sekmeyle ilgili değilse -1 olarak ayarlanır.
-
timeStamp
sayı
Bu sinyalin tetiklendiği zaman (epoch'tan bu yana geçen milisaniye cinsinden).
-
tür
İstenen kaynağın nasıl kullanılacağı.
-
url
dize
-
-
returns
BlockingResponse | undefined
"extraInfoSpec" parametresinde "blocking" belirtilirse etkinlik işleyici bu türde bir nesne döndürmelidir.
-
-
filtre
-
extraInfoSpec
OnBeforeSendHeadersOptions[] isteğe bağlı
onCompleted
chrome.webRequest.onCompleted.addListener(
callback: function,
filter: RequestFilter,
extraInfoSpec?: OnCompletedOptions[],
)
Bir istek tamamlandığında tetiklenir.
Parametreler
-
callback
işlev
callbackparametresi şu şekilde görünür:(details: object) => void
-
ayrıntılar
nesne
-
documentId
string isteğe bağlı
Chrome 106+İsteği gönderen dokümanın UUID'si.
-
documentLifecycleChrome 106+
Belgenin içinde bulunduğu yaşam döngüsü.
-
frameId
sayı
0 değeri, isteğin ana çerçevede gerçekleştiğini gösterir. Pozitif bir değer, isteğin gerçekleştiği alt çerçevenin kimliğini gösterir. Bir (alt) çerçevenin dokümanı yüklüyse (
type,main_frameveyasub_frameise)frameId, dış çerçevenin kimliğini değil, bu çerçevenin kimliğini gösterir. Kare kimlikleri bir sekme içinde benzersizdir. -
frameTypeChrome 106+
İsteğin gerçekleştiği kare türü.
-
fromCache
boole
Bu yanıtın disk önbelleğinden alınıp alınmadığını gösterir.
-
başlatan
string isteğe bağlı
Chrome 63+İsteğin başlatıldığı kaynak. Bu durum, yönlendirmelerle değişmez. Bu, opak bir kaynaksa "null" dizesi kullanılır.
-
ip
string isteğe bağlı
İsteğin gönderildiği sunucu IP adresi. Bunun gerçek bir IPv6 adresi olabileceğini unutmayın.
-
method
dize
Standart HTTP yöntemi.
-
parentDocumentId
string isteğe bağlı
Chrome 106+Bu çerçeveye sahip üst dokümanın UUID'si. Üst öğe yoksa bu ayarlanmaz.
-
parentFrameId
sayı
İsteği gönderen çerçeveyi sarmalayan çerçevenin kimliği. Üst çerçeve yoksa -1 olarak ayarlanır.
-
requestId
dize
İsteğin kimliği. İstek kimlikleri, tarayıcı oturumunda benzersizdir. Bu nedenle, aynı isteğin farklı etkinliklerini ilişkilendirmek için kullanılabilirler.
-
responseHeaders
HttpHeaders isteğe bağlı
Bu yanıtla birlikte alınan HTTP yanıt başlıkları.
-
statusCode
sayı
Sunucu tarafından döndürülen standart HTTP durum kodu.
-
statusLine
dize
Yanıtın HTTP durum satırı veya HTTP/0.9 yanıtları için "HTTP/0.9 200 OK" dizesi (yani durum satırı olmayan yanıtlar) ya da başlık yoksa boş bir dize.
-
tabId
sayı
İsteğin gerçekleştiği sekmenin kimliği. İstek bir sekmeyle ilgili değilse -1 olarak ayarlanır.
-
timeStamp
sayı
Bu sinyalin tetiklendiği zaman (epoch'tan bu yana geçen milisaniye cinsinden).
-
tür
İstenen kaynağın nasıl kullanılacağı.
-
url
dize
-
-
-
filtre
-
extraInfoSpec
OnCompletedOptions[] isteğe bağlı
onErrorOccurred
chrome.webRequest.onErrorOccurred.addListener(
callback: function,
filter: RequestFilter,
extraInfoSpec?: OnErrorOccurredOptions[],
)
Bir hata oluştuğunda tetiklenir.
Parametreler
-
callback
işlev
callbackparametresi şu şekilde görünür:(details: object) => void
-
ayrıntılar
nesne
-
documentId
string isteğe bağlı
Chrome 106+İsteği gönderen dokümanın UUID'si. İstek bir çerçeve gezinmesiyse bu değer mevcut değildir.
-
documentLifecycleChrome 106+
Belgenin içinde bulunduğu yaşam döngüsü.
-
hata
dize
Hata açıklaması. Bu dize, sürümler arasında geriye dönük uyumluluğu garanti etmez. İçeriği ayrıştırmamalı ve içeriğe göre işlem yapmamalısınız.
-
frameId
sayı
0 değeri, isteğin ana çerçevede gerçekleştiğini gösterir. Pozitif bir değer, isteğin gerçekleştiği alt çerçevenin kimliğini gösterir. Bir (alt) çerçevenin dokümanı yüklüyse (
type,main_frameveyasub_frameise)frameId, dış çerçevenin kimliğini değil, bu çerçevenin kimliğini gösterir. Kare kimlikleri bir sekme içinde benzersizdir. -
frameTypeChrome 106+
İsteğin gerçekleştiği kare türü.
-
fromCache
boole
Bu yanıtın disk önbelleğinden alınıp alınmadığını gösterir.
-
başlatan
string isteğe bağlı
Chrome 63+İsteğin başlatıldığı kaynak. Bu durum, yönlendirmelerle değişmez. Bu, opak bir kaynaksa "null" dizesi kullanılır.
-
ip
string isteğe bağlı
İsteğin gönderildiği sunucu IP adresi. Bunun gerçek bir IPv6 adresi olabileceğini unutmayın.
-
method
dize
Standart HTTP yöntemi.
-
parentDocumentId
string isteğe bağlı
Chrome 106+Bu çerçeveye sahip üst dokümanın UUID'si. Üst öğe yoksa bu ayarlanmaz.
-
parentFrameId
sayı
İsteği gönderen çerçeveyi sarmalayan çerçevenin kimliği. Üst çerçeve yoksa -1 olarak ayarlanır.
-
requestId
dize
İsteğin kimliği. İstek kimlikleri, tarayıcı oturumunda benzersizdir. Bu nedenle, aynı isteğin farklı etkinliklerini ilişkilendirmek için kullanılabilirler.
-
tabId
sayı
İsteğin gerçekleştiği sekmenin kimliği. İstek bir sekmeyle ilgili değilse -1 olarak ayarlanır.
-
timeStamp
sayı
Bu sinyalin tetiklendiği zaman (epoch'tan bu yana geçen milisaniye cinsinden).
-
tür
İstenen kaynağın nasıl kullanılacağı.
-
url
dize
-
-
-
filtre
-
extraInfoSpec
OnErrorOccurredOptions[] isteğe bağlı
onHeadersReceived
chrome.webRequest.onHeadersReceived.addListener(
callback: function,
filter: RequestFilter,
extraInfoSpec?: OnHeadersReceivedOptions[],
)
Bir isteğin HTTP yanıt başlıkları alındığında tetiklenir.
Parametreler
-
callback
işlev
callbackparametresi şu şekilde görünür:(details: object) => BlockingResponse | undefined
-
ayrıntılar
nesne
-
documentId
string isteğe bağlı
Chrome 106+İsteği gönderen dokümanın UUID'si.
-
documentLifecycleChrome 106+
Belgenin içinde bulunduğu yaşam döngüsü.
-
frameId
sayı
0 değeri, isteğin ana çerçevede gerçekleştiğini gösterir. Pozitif bir değer, isteğin gerçekleştiği alt çerçevenin kimliğini gösterir. Bir (alt) çerçevenin dokümanı yüklüyse (
type,main_frameveyasub_frameise)frameId, dış çerçevenin kimliğini değil, bu çerçevenin kimliğini gösterir. Kare kimlikleri bir sekme içinde benzersizdir. -
frameTypeChrome 106+
İsteğin gerçekleştiği kare türü.
-
başlatan
string isteğe bağlı
Chrome 63+İsteğin başlatıldığı kaynak. Bu durum, yönlendirmelerle değişmez. Bu, opak bir kaynaksa "null" dizesi kullanılır.
-
method
dize
Standart HTTP yöntemi.
-
parentDocumentId
string isteğe bağlı
Chrome 106+Bu çerçeveye sahip üst dokümanın UUID'si. Üst öğe yoksa bu ayarlanmaz.
-
parentFrameId
sayı
İsteği gönderen çerçeveyi sarmalayan çerçevenin kimliği. Üst çerçeve yoksa -1 olarak ayarlanır.
-
requestId
dize
İsteğin kimliği. İstek kimlikleri, tarayıcı oturumunda benzersizdir. Bu nedenle, aynı isteğin farklı etkinliklerini ilişkilendirmek için kullanılabilirler.
-
responseHeaders
HttpHeaders isteğe bağlı
Bu yanıtla birlikte alınan HTTP yanıt başlıkları.
-
securityInfo
SecurityInfo isteğe bağlı
Chrome 144+Temel bağlantı için kullanılan TLS/QUIC bağlantısı hakkında bilgi. Yalnızca
extraInfoSpecparametresindesecurityInfobelirtilmişse sağlanır. -
statusCode
sayı
Chrome 43 ve sonraki sürümlerSunucu tarafından döndürülen standart HTTP durum kodu.
-
statusLine
dize
Yanıtın HTTP durum satırı veya HTTP/0.9 yanıtları için "HTTP/0.9 200 OK" dizesi (yani durum satırı olmayan yanıtlar).
-
tabId
sayı
İsteğin gerçekleştiği sekmenin kimliği. İstek bir sekmeyle ilgili değilse -1 olarak ayarlanır.
-
timeStamp
sayı
Bu sinyalin tetiklendiği zaman (epoch'tan bu yana geçen milisaniye cinsinden).
-
tür
İstenen kaynağın nasıl kullanılacağı.
-
url
dize
-
-
returns
BlockingResponse | undefined
"extraInfoSpec" parametresinde "blocking" belirtilirse etkinlik işleyici bu türde bir nesne döndürmelidir.
-
-
filtre
-
extraInfoSpec
OnHeadersReceivedOptions[] isteğe bağlı
onResponseStarted
chrome.webRequest.onResponseStarted.addListener(
callback: function,
filter: RequestFilter,
extraInfoSpec?: OnResponseStartedOptions[],
)
Yanıt gövdesinin ilk baytı alındığında tetiklenir. HTTP istekleri için bu, durum satırının ve yanıt başlıklarının kullanılabilir olduğu anlamına gelir.
Parametreler
-
callback
işlev
callbackparametresi şu şekilde görünür:(details: object) => void
-
ayrıntılar
nesne
-
documentId
string isteğe bağlı
Chrome 106+İsteği gönderen dokümanın UUID'si.
-
documentLifecycleChrome 106+
Belgenin içinde bulunduğu yaşam döngüsü.
-
frameId
sayı
0 değeri, isteğin ana çerçevede gerçekleştiğini gösterir. Pozitif bir değer, isteğin gerçekleştiği alt çerçevenin kimliğini gösterir. Bir (alt) çerçevenin dokümanı yüklüyse (
type,main_frameveyasub_frameise)frameId, dış çerçevenin kimliğini değil, bu çerçevenin kimliğini gösterir. Kare kimlikleri bir sekme içinde benzersizdir. -
frameTypeChrome 106+
İsteğin gerçekleştiği kare türü.
-
fromCache
boole
Bu yanıtın disk önbelleğinden alınıp alınmadığını gösterir.
-
başlatan
string isteğe bağlı
Chrome 63+İsteğin başlatıldığı kaynak. Bu durum, yönlendirmelerle değişmez. Bu, opak bir kaynaksa "null" dizesi kullanılır.
-
ip
string isteğe bağlı
İsteğin gönderildiği sunucu IP adresi. Bunun gerçek bir IPv6 adresi olabileceğini unutmayın.
-
method
dize
Standart HTTP yöntemi.
-
parentDocumentId
string isteğe bağlı
Chrome 106+Bu çerçeveye sahip üst dokümanın UUID'si. Üst öğe yoksa bu ayarlanmaz.
-
parentFrameId
sayı
İsteği gönderen çerçeveyi sarmalayan çerçevenin kimliği. Üst çerçeve yoksa -1 olarak ayarlanır.
-
requestId
dize
İsteğin kimliği. İstek kimlikleri, tarayıcı oturumunda benzersizdir. Bu nedenle, aynı isteğin farklı etkinliklerini ilişkilendirmek için kullanılabilirler.
-
responseHeaders
HttpHeaders isteğe bağlı
Bu yanıtla birlikte alınan HTTP yanıt başlıkları.
-
statusCode
sayı
Sunucu tarafından döndürülen standart HTTP durum kodu.
-
statusLine
dize
Yanıtın HTTP durum satırı veya HTTP/0.9 yanıtları için "HTTP/0.9 200 OK" dizesi (yani durum satırı olmayan yanıtlar) ya da başlık yoksa boş bir dize.
-
tabId
sayı
İsteğin gerçekleştiği sekmenin kimliği. İstek bir sekmeyle ilgili değilse -1 olarak ayarlanır.
-
timeStamp
sayı
Bu sinyalin tetiklendiği zaman (epoch'tan bu yana geçen milisaniye cinsinden).
-
tür
İstenen kaynağın nasıl kullanılacağı.
-
url
dize
-
-
-
filtre
-
extraInfoSpec
OnResponseStartedOptions[] isteğe bağlı
onSendHeaders
chrome.webRequest.onSendHeaders.addListener(
callback: function,
filter: RequestFilter,
extraInfoSpec?: OnSendHeadersOptions[],
)
İstek sunucuya gönderilmeden hemen önce tetiklenir (önceki onBeforeSendHeaders geri çağırmalarında yapılan değişiklikler onSendHeaders tetiklendiğinde görünür).
Parametreler
-
callback
işlev
callbackparametresi şu şekilde görünür:(details: object) => void
-
ayrıntılar
nesne
-
documentId
string isteğe bağlı
Chrome 106+İsteği gönderen dokümanın UUID'si.
-
documentLifecycleChrome 106+
Belgenin içinde bulunduğu yaşam döngüsü.
-
frameId
sayı
0 değeri, isteğin ana çerçevede gerçekleştiğini gösterir. Pozitif bir değer, isteğin gerçekleştiği alt çerçevenin kimliğini gösterir. Bir (alt) çerçevenin dokümanı yüklüyse (
type,main_frameveyasub_frameise)frameId, dış çerçevenin kimliğini değil, bu çerçevenin kimliğini gösterir. Kare kimlikleri bir sekme içinde benzersizdir. -
frameTypeChrome 106+
İsteğin gerçekleştiği kare türü.
-
başlatan
string isteğe bağlı
Chrome 63+İsteğin başlatıldığı kaynak. Bu durum, yönlendirmelerle değişmez. Bu, opak bir kaynaksa "null" dizesi kullanılır.
-
method
dize
Standart HTTP yöntemi.
-
parentDocumentId
string isteğe bağlı
Chrome 106+Bu çerçeveye sahip üst dokümanın UUID'si. Üst öğe yoksa bu ayarlanmaz.
-
parentFrameId
sayı
İsteği gönderen çerçeveyi sarmalayan çerçevenin kimliği. Üst çerçeve yoksa -1 olarak ayarlanır.
-
requestHeaders
HttpHeaders isteğe bağlı
Bu istekle birlikte gönderilen HTTP istek başlıkları.
-
requestId
dize
İsteğin kimliği. İstek kimlikleri, tarayıcı oturumunda benzersizdir. Bu nedenle, aynı isteğin farklı etkinliklerini ilişkilendirmek için kullanılabilirler.
-
tabId
sayı
İsteğin gerçekleştiği sekmenin kimliği. İstek bir sekmeyle ilgili değilse -1 olarak ayarlanır.
-
timeStamp
sayı
Bu sinyalin tetiklendiği zaman (epoch'tan bu yana geçen milisaniye cinsinden).
-
tür
İstenen kaynağın nasıl kullanılacağı.
-
url
dize
-
-
-
filtre
-
extraInfoSpec
OnSendHeadersOptions[] isteğe bağlı