refresh date: 2026-09-25 robots: noindex
Açıklama
Web sitelerinin çerezler, JavaScript ve eklentiler gibi özellikleri kullanıp kullanamayacaklarını kontrol eden ayarları değiştirmek için chrome.contentSettings API'yi kullanın. Daha genel bir ifadeyle, içerik ayarları Chrome'un davranışını genel olarak değil, site bazında özelleştirmenize olanak tanır.
İzinler
contentSettingsManifest
API'yi kullanmak için uzantınızın manifest dosyasında"contentSettings" iznini beyan etmeniz gerekir. Örneğin:
{
"name": "My extension",
...
"permissions": [
"contentSettings"
],
...
}
İçerik ayarı kalıpları
Her içerik ayarının etkilediği web sitelerini belirtmek için kalıpları kullanabilirsiniz. Örneğin,
https://*.youtube.com/*, youtube.com'u ve tüm alt alanlarını belirtir. İçerik ayarı kalıplarının söz dizimi, birkaç fark dışında eşleşme kalıplarıyla aynıdır:
http,httpsveftpURL'leri için yol, joker karakter (/*) olmalıdır.fileURL'leri için yol tamamen belirtilmeli ve joker karakter içermemelidir.- İçerik ayarı kalıpları, eşleşme kalıplarından farklı olarak bir bağlantı noktası numarası belirtebilir. Bir bağlantı noktası numarası belirtilirse kalıp yalnızca bu bağlantı noktasına sahip web siteleriyle eşleşir. Bağlantı noktası numarası belirtilmemişse desen tüm bağlantı noktalarıyla eşleşir.
Desen önceliği
Belirli bir site için birden fazla içerik ayarı kuralı geçerliyse daha spesifik kalıba sahip kural öncelikli olur.
Örneğin, aşağıdaki kalıplar önceliğe göre sıralanır:
https://www.example.com/*https://*.example.com/*(example.com ve tüm alt alan adlarıyla eşleşir)<all_urls>(her URL ile eşleşir)
Üç tür joker karakter, bir kalıbın ne kadar spesifik olduğunu etkiler:
- Bağlantı noktasındaki joker karakterler (ör.
https://www.example.com:*/*) - Şemadaki joker karakterler (örneğin,
*://www.example.com:123/*) - Ana makine adındaki joker karakterler (örneğin
https://*.example.com:123/*)
Bir kalıp, bir bölümde başka bir kalıptan daha belirgin, başka bir bölümde ise daha az belirginse farklı bölümler şu sırayla kontrol edilir: ana makine adı, şema, bağlantı noktası. Örneğin, aşağıdaki kalıplar önceliğe göre sıralanır:
https://www.example.com:*/*Ana makine adını ve şemayı belirtir.*:/www.example.com:123/*Ana makine adını belirtmesine rağmen şemayı belirtmediği için bu kadar yüksek değil.https://*.example.com:123/*Bağlantı noktası ve şema belirtilse de ana makine adında joker karakter olduğu için daha düşük.
Birincil ve ikincil kalıplar
Hangi içerik ayarının uygulanacağına karar verilirken dikkate alınan URL, içerik türüne bağlıdır.
Örneğin, contentSettings.notifications ayarları, çok amaçlı adres çubuğunda gösterilen URL'ye göre belirlenir. Bu URL'ye "birincil" URL denir.
Bazı içerik türleri ek URL'leri dikkate alabilir. Örneğin, bir sitenin contentSettings.cookies ayarlamasına izin verilip verilmeyeceği, HTTP isteğinin URL'sine (bu durumda birincil URL) ve çok amaçlı adres çubuğunda gösterilen URL'ye (ikincil URL olarak adlandırılır) göre belirlenir.
Birden fazla kuralda birincil ve ikincil kalıplar varsa daha spesifik birincil kalıba sahip kural öncelikli olur. Birden fazla kural aynı birincil kalıba sahipse daha spesifik ikincil kalıba sahip kural öncelikli olur. Örneğin, aşağıdaki birincil/ikincil desen çiftleri listesi önceliğe göre sıralanmıştır:
| Öncelik | Birincil desen | İkincil desen |
|---|---|---|
| 1 | https://www.moose.com/*, | https://www.wombat.com/* |
| 2 | https://www.moose.com/*, | <all_urls> |
| 3 | <all_urls>, | https://www.wombat.com/* |
| 4 | <all_urls>, | <all_urls> |
Kaynak tanımlayıcıları
Kaynak tanımlayıcıları, bir içerik türünün belirli alt türleri için içerik ayarlarını belirtmenize olanak tanır.
Şu anda kaynak tanımlayıcıları destekleyen tek içerik türü contentSettings.plugins'dir. Kaynak tanımlayıcı, belirli bir eklentiyi tanımlar. İçerik ayarları uygulanırken önce belirli eklentinin ayarları kontrol edilir. Belirli bir eklenti için ayar bulunamazsa eklentilerle ilgili genel içerik ayarları kontrol edilir.
Örneğin, bir içerik ayarı kuralının kaynak tanımlayıcısı adobe-flash-player ve deseni <all_urls> ise bu kural, deseni daha spesifik olsa bile kaynak tanımlayıcısı olmayan ve deseni https://www.example.com/* olan bir kurala göre önceliklidir.
contentSettings.ContentSetting.getResourceIdentifiers yöntemini çağırarak bir içerik türü için kaynak tanımlayıcılarının listesini alabilirsiniz. Döndürülen liste, kullanıcının makinesinde yüklü olan eklentilere göre değişebilir ancak Chrome, eklenti güncellemeleri sırasında tanımlayıcıları sabit tutmaya çalışır.
Örnekler
Bu API'yi denemek için chrome-extension-samples deposundan contentSettings API örneğini yükleyin.
Türler
AutoVerifyContentSetting
Enum
"allow"
"block"
CameraContentSetting
Enum
"allow"
"block"
"ask"
ClipboardContentSetting
Enum
"allow"
"block"
"ask"
ContentSetting
Özellikler
-
temizle
void
PromiseBu uzantı tarafından belirlenen tüm içerik ayarı kurallarını temizler.
clearişlevi şu şekilde görünür:(details: object, callback?: function) => {...}
-
ayrıntılar
nesne
-
kapsam
Kapsam isteğe bağlı
Ayarı temizleyeceğiniz yer (varsayılan: normal).
-
-
callback
işlev isteğe bağlı
callbackparametresi şu şekilde görünür:() => void
-
returns
Promise<void>
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.
-
-
get
void
PromiseBelirli bir URL çifti için geçerli içerik ayarını alır.
getişlevi şu şekilde görünür:(details: object, callback?: function) => {...}
-
ayrıntılar
nesne
-
incognito
boolean isteğe bağlı
Gizli oturum için içerik ayarlarının kontrol edilip edilmeyeceği. (varsayılan değer false)
-
primaryUrl
dize
İçerik ayarının alınması gereken birincil URL. Birincil URL'nin anlamının içerik türüne bağlı olduğunu unutmayın.
-
resourceIdentifier
ResourceIdentifier isteğe bağlı
Ayarların alınması gereken içerik türünün daha ayrıntılı tanımlayıcısı.
-
secondaryUrl
dize isteğe bağlı
İçerik ayarının alınması gereken ikincil URL. Varsayılan olarak birincil URL'dir. İkincil URL'nin anlamının içerik türüne bağlı olduğunu ve tüm içerik türlerinde ikincil URL'lerin kullanılmadığını unutmayın.
-
-
callback
işlev isteğe bağlı
callbackparametresi şu şekilde görünür:(details: object) => void
-
ayrıntılar
nesne
-
ayarlama
T
İçerik ayarı. Olası değerler için tek tek ContentSetting nesnelerinin açıklamasına bakın.
-
-
-
returns
Promise<object>
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.
-
-
getResourceIdentifiers
void
PromisegetResourceIdentifiersişlevi şu şekilde görünür:(callback?: function) => {...}
-
callback
işlev isteğe bağlı
callbackparametresi şu şekilde görünür:(resourceIdentifiers?: ResourceIdentifier[]) => void
-
resourceIdentifiers
ResourceIdentifier[] isteğe bağlı
Bu içerik türü için kaynak tanımlayıcıların listesi veya bu içerik türü kaynak tanımlayıcı kullanmıyorsa
undefined.
-
-
returns
Promise<ResourceIdentifier[]>
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.
-
-
grup
void
PromiseYeni bir içerik ayarı kuralı uygular.
setişlevi şu şekilde görünür:(details: object, callback?: function) => {...}
-
ayrıntılar
nesne
-
primaryPattern
dize
Birincil URL'nin kalıbı. Kalıp biçimi hakkında ayrıntılı bilgi için İçerik ayarı kalıpları başlıklı makaleyi inceleyin.
-
resourceIdentifier
ResourceIdentifier isteğe bağlı
İçerik türünün kaynak tanımlayıcısı.
-
kapsam
Kapsam isteğe bağlı
Ayarı belirleyeceğiniz yer (varsayılan: normal).
-
secondaryPattern
dize isteğe bağlı
İkincil URL'nin kalıbı. Varsayılan olarak tüm URL'lerle eşleşir. Kalıbın biçimi hakkında ayrıntılı bilgi için İçerik ayarı kalıpları başlıklı makaleyi inceleyin.
-
ayarlama
herhangi
Bu kural tarafından uygulanan ayar. Olası değerler için tek tek ContentSetting nesnelerinin açıklamasına bakın.
-
-
callback
işlev isteğe bağlı
callbackparametresi şu şekilde görünür:() => void
-
returns
Promise<void>
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.
-
CookiesContentSetting
Enum
"allow"
"block"
"session_only"
FullscreenContentSetting
Değer
"allow"
ImagesContentSetting
Enum
"allow"
"block"
JavascriptContentSetting
Enum
"allow"
"block"
LocationContentSetting
Enum
"allow"
"block"
"ask"
MicrophoneContentSetting
Enum
"allow"
"block"
"ask"
MouselockContentSetting
Değer
"allow"
MultipleAutomaticDownloadsContentSetting
Enum
"allow"
"block"
"ask"
NotificationsContentSetting
Enum
"allow"
"block"
"ask"
PluginsContentSetting
Değer
"block"
PopupsContentSetting
Enum
"allow"
"block"
PpapiBrokerContentSetting
Değer
"block"
ResourceIdentifier
Kaynak tanımlayıcılarını kullanan tek içerik türü contentSettings.plugins'dir. Daha fazla bilgi için Kaynak Tanımlayıcıları bölümüne bakın.
Özellikler
-
açıklama
dize isteğe bağlı
Kaynağın kullanıcılar tarafından okunabilir açıklaması.
-
id
dize
Belirli içerik türünün kaynak tanımlayıcısı.
Scope
ContentSetting'in kapsamı. Şunlardan biri:
regular: Normal profil ayarı (başka bir yerde geçersiz kılınmadığı takdirde gizli profil tarafından devralınır),
incognito\_session\_only: Yalnızca gizli oturum sırasında ayarlanabilen ve gizli oturum sona erdiğinde silinen gizli profil ayarı (normal ayarları geçersiz kılar).
Enum
"regular"
"incognito_session_only"
SoundContentSetting
Enum
"allow"
"block"
Özellikler
automaticDownloads
Sitelerin birden fazla dosyayı otomatik olarak indirmesine izin verilip verilmeyeceği. Şunlardan birini seçin:
allow: Sitelerin birden fazla dosyayı otomatik olarak indirmesine izin ver,
block: Sitelerin birden fazla dosyayı otomatik olarak indirmesine izin verme,
ask: Bir site ilk dosyadan sonra dosyaları otomatik olarak indirmek istediğinde sor.
Varsayılan değer ask'dır.
Birincil URL, üst düzey çerçevenin URL'sidir. İkincil URL kullanılmaz.
autoVerify
Sitelerin Private State Tokens API'yi kullanmasına izin verilip verilmeyeceği. Şunlardan biri:
allow: Sitelerin Private State Tokens API'yi kullanmasına izin verin,
block: Sitelerin Private State Tokens API'yi kullanmasını engelleyin.
Varsayılan değer allow'dır.
set() çağrılırken birincil URL kalıbı <all_urls> olmalıdır. İkincil URL kullanılmaz.
camera
Sitelerin kameraya erişmesine izin verilip verilmeyeceği. Şunlardan birini seçin:
allow: Sitelerin kameraya erişmesine izin verin,
block: Sitelerin kameraya erişmesine izin vermeyin,
ask: Bir site kameraya erişmek istediğinde sorun.
Varsayılan değer ask'dır.
Birincil URL, kamera erişimi isteyen belgenin URL'sidir. İkincil URL kullanılmaz.
NOT: Her iki kalıp da "<all_urls>" ise"izin ver" ayarı geçerli değildir.
clipboard
Sitelerin, Async Clipboard API'nin gelişmiş özellikleri aracılığıyla panoya erişmesine izin verilip verilmeyeceği. "Gelişmiş" özellikler, kullanıcı hareketi sonrasında yerleşik biçimler yazmanın yanı sıra okuma, özel biçimler yazma ve kullanıcı hareketi olmadan yazma gibi özellikleri içerir. Şunlardan biri:
allow: Sitelerin gelişmiş pano özelliklerini kullanmasına izin ver,
block: Sitelerin gelişmiş pano özelliklerini kullanmasına izin verme,
ask: Bir site gelişmiş pano özelliklerini kullanmak istediğinde sor.
Varsayılan değer ask'dır.
Birincil URL, pano erişimi isteyen belgenin URL'sidir. İkincil URL kullanılmaz.
cookies
Web sitelerinin çerez ve diğer yerel verileri ayarlamasına izin verilip verilmeyeceği. Şunlardan biri:
allow: Çerezleri kabul et,
block: Çerezleri engelle,
session\_only: Çerezleri yalnızca geçerli oturum için kabul et.
Varsayılan değer allow'dır.
Birincil URL, çerez kaynağını temsil eden URL'dir. İkincil URL, üst düzey çerçevenin URL'sidir.
fullscreen
Kullanımdan kaldırıldı. Artık herhangi bir etkisi yoktur. Tam ekran izni artık tüm siteler için otomatik olarak veriliyor. Değer her zaman allow'dır.
images
Resimlerin gösterilip gösterilmeyeceği. Şunlardan biri:
allow: Resimleri göster,
block: Resimleri gösterme.
Varsayılan değer allow'dır.
Birincil URL, üst düzey çerçevenin URL'sidir. İkincil URL, resmin URL'sidir.
javascript
JavaScript'in çalıştırılıp çalıştırılmayacağı. Şunlardan biri:
allow: JavaScript'i çalıştır,
block: JavaScript'i çalıştırma.
Varsayılan değer allow'dır.
Birincil URL, üst düzey çerçevenin URL'sidir. İkincil URL kullanılmaz.
location
Coğrafi konuma izin verilip verilmeyeceği. Şunlardan birini seçin:
allow: Sitelerin fiziksel konumunuzu izlemesine izin verin,
block: Sitelerin fiziksel konumunuzu izlemesine izin verme,
ask: Sitelerin fiziksel konumunuzu izlemesine izin vermeden önce sorun.
Varsayılan değer ask'dır.
Birincil URL, konum verilerini isteyen dokümanın URL'sidir. İkincil URL, üst düzey çerçevenin URL'sidir (istek URL'sinden farklı olabilir veya olmayabilir).
microphone
Sitelerin mikrofona erişmesine izin verilip verilmeyeceği. Aşağıdaki seçeneklerden birini belirleyin:
allow: Sitelerin mikrofona erişmesine izin ver,
block: Sitelerin mikrofona erişmesine izin verme,
ask: Bir site mikrofona erişmek istediğinde sor.
Varsayılan değer ask'dır.
Birincil URL, mikrofon erişimi isteyen belgenin URL'sidir. İkincil URL kullanılmaz.
NOT: Her iki kalıp da "<all_urls>" ise"izin ver" ayarı geçerli değildir.
mouselock
Kullanımdan kaldırıldı. Artık herhangi bir etkisi yoktur. Fare kilitleme izni artık tüm siteler için otomatik olarak veriliyor. Değer her zaman allow'dır.
notifications
Sitelerin masaüstü bildirimleri göstermesine izin verilip verilmeyeceği. Şunlardan birini seçin:
allow: Sitelerin masaüstü bildirimleri göstermesine izin ver,
block: Sitelerin masaüstü bildirimleri göstermesine izin verme,
ask: Bir site masaüstü bildirimi göstermek istediğinde sor.
Varsayılan değer ask'dır.
Birincil URL, bildirimi göstermek isteyen belgenin URL'sidir. İkincil URL kullanılmaz.
plugins
Kullanımdan kaldırıldı. Chrome 88'de Flash desteği kaldırıldığından bu iznin artık bir etkisi yoktur. Değer her zaman block'dır. set() ve clear() ile ilgili aramalar yoksayılır.
popups
Sitelerin pop-up göstermesine izin verilip verilmeyeceği. Şunlardan birini seçin:
allow: Sitelerin pop-up göstermesine izin verin,
block: Sitelerin pop-up göstermesine izin vermeyin.
Varsayılan değer block'dır.
Birincil URL, üst düzey çerçevenin URL'sidir. İkincil URL kullanılmaz.
unsandboxedPlugins
Kullanımdan kaldırıldı. Daha önce, sitelerin korumalı alan dışında eklentiler çalıştırmasına izin verilip verilmeyeceğini kontrol ediyordu. Ancak Chrome 88'de Flash aracısı işlemi kaldırıldığından bu iznin artık bir etkisi yoktur. Değer her zaman block'dır. set() ve clear() ile ilgili aramalar yoksayılır.