Açıklama
chrome.declarativeNetRequest API, bildirim kuralları belirtilerek ağ isteklerini engellemek veya değiştirmek için kullanılır. Bu sayede uzantılar, ağ isteklerini engellemeden ve içeriklerini görüntülemeden değiştirebilir. Böylece daha fazla gizlilik sağlanır.
İzinler
declarativeNetRequestdeclarativeNetRequestWithHostAccess"declarativeNetRequest" ve "declarativeNetRequestWithHostAccess" izinleri aynı özellikleri sağlar. Bu izinler arasındaki fark, izinlerin istendiği veya verildiği zamandır.
"declarativeNetRequest"- Yükleme sırasında izin uyarısını tetikler ancak
allow,allowAllRequestsveblockkurallarına örtülü erişim sağlar. Toplantı sahiplerinden tam erişim isteğinde bulunmanız gerekmemesi için mümkün olduğunda bu yöntemi kullanın. "declarativeNetRequestFeedback"- Paketlenmemiş uzantılar için hata ayıklama özelliklerini etkinleştirir. Özellikle
getMatchedRules()veonRuleMatchedDebug. "declarativeNetRequestWithHostAccess"- Yükleme sırasında izin uyarısı gösterilmez ancak bir ana makinede herhangi bir işlem yapabilmek için ana makine izinleri istemeniz gerekir. Bu, halihazırda ana makine izinlerine sahip bir uzantıda ek uyarılar oluşturmadan bildirimli ağ isteği kurallarını kullanmak istediğinizde uygundur.
Kullanılabilirlik
Manifest
Daha önce açıklanan izinlere ek olarak, belirli kural grubu türleri (özellikle statik kural grupları) "declarative_net_request" manifest anahtarının bildirilmesini gerektirir. Bu anahtar, "rule_resources" adlı tek bir anahtara sahip bir sözlük olmalıdır. Bu anahtar, aşağıda gösterildiği gibi Ruleset türünde sözlükler içeren bir dizidir. (Yalnızca bir dizi olduğundan "Ruleset" adının manifestin JSON'ında görünmediğini unutmayın.) Statik kural kümeleri bu belgenin ilerleyen kısımlarında açıklanmaktadır.
{
"name": "My extension",
...
"declarative_net_request" : {
"rule_resources" : [{
"id":