Bu dokümanda, web özel şablonlarına ilişkin izinler özetlenmektedir.
Her izin:
- Gerekli API'ler tarafından kontrol edilir.
- Kullanılan API'lere bağlı olarak korumalı alana alınmış JavaScript'te otomatik olarak algılanır. Bu, özel şablon düzenleyicide düzenlemeler yapıldığında gerçekleşir (hızlı bir geri bildirim döngüsü) ve kod derlendiğinde (doğru öğenin doğru emin olun.
- İznin daha ayrıntılı olması için özel şablon düzenleyicide düzenlenebilir.
queryPermission
API aracılığıyla korumalı alana alınan JavaScript'te sorgulanabilir.
access_globals
Görünen ad: Genel değişkenlere erişir
Açıklama: Bir genel değişkene ( hassas API'lerde kullanılabilir.
Yapılandırma: Erişilebilecek anahtarların listesi. Her anahtar bir noktadır
ayrılmış yol. Örneğin: foo.bar
Her yoldaki ilk jeton
genel tarayıcı kapsamında önceden tanımlanmış bir anahtar veya bir JavaScript anahtar kelimesi. Okumuş,
erişimi yöneten onay kutuları yazma ve yürütme
Zorunlu kılma: setInWindow
, copyFromWindow
, callInWindow
,
createQueue
, createArgumentsQueue
Sorgu imzası: queryPermission('access_globals', 'read', <key to read
from>)
veya queryPermission('access_globals', 'write', <key to write to>)
ya da
queryPermission('access_globals', 'readwrite', <key to read and write>)
veya
queryPermission('access_globals', 'execute', <key of function to execute>)
Notlar: Özel bir şablonun genel şablon okuma ve/veya yazma yapıp yapamayacağını kontrol eder değerler.
Örnek kod
const queryPermission = require('queryPermission');
const createQueue = require('createQueue');
if (queryPermission('access_globals', 'readwrite', 'dataLayer')) {
const dataLayerPush = createQueue('dataLayer');
}
access_local_storage
Görünen ad: Yerel depolama alanına erişir
Açıklama: Yerel depolama alanında belirtilen anahtarlara erişim izni verir.
Yapılandırma: Erişilebilecek yerel depolama anahtarlarının listesi. Bu, joker karakter içermeyen basit anahtar dizisi. Okuma ve yazma için onay kutuları var erişimi yönetir.
Zorunlu kılma tarihi: localStorage
Sorgu imzası: queryPermission('access_local_storage', 'read', <key to
read from>)
veya queryPermission('access_local_storage', 'write', <key to write
to>)
ya da queryPermission('access_local_storage', 'readwrite', <key to read and
write>)
Örnek kod
const queryPermission = require('queryPermission');
const localStorage = require('localStorage');
const key = 'my_key';
if (queryPermission('access_local_storage', 'read', key)) {
const value = localStorage.getItem(key);
}
access_template_storage
Görünen ad: Şablon depolama alanına erişir
Açıklama: Aşağıdaki işlemleri yapabilecek şablonlar için geçici depolama alanına erişim izni verir: sayfa ömrü boyunca kullanılabilir.
Yapılandırma: Yok
Zorunlu kılma tarihi: templateStorage
Sorgu imzası: queryPermission('access_template_storage')
Örnek kod
const queryPermission = require('queryPermission');
const templateStorage = require('templateStorage');
const key = 'my_key';
if (queryPermission('access_template_storage')) {
const value = templateStorage.getItem(key);
}
get_cookies
Görünen ad: Çerez değerlerini okur
Açıklama: Belirtilen ada sahip çerezlerin değerlerini okur.
Yapılandırma: Okuma için izin verilen çerez adlarının listesi.
Zorunlu kılma tarihi: getCookieValues
Sorgu imzası: queryPermission('get_cookies', <name>)
Notlar: Bir çerezin, adına bağlı olarak okunup okunamayacağını belirler.
Örnek kod
const queryPermission = require('queryPermission');
const getCookieValues = require('getCookieValues');
const cookieName = 'info';
let cookieValues;
if (queryPermission('get_cookies', cookieName)) {
cookieValues = getCookieValues(cookieName);
}
get_referrer
Görünen ad: Yönlendiren URL'sini okur
Açıklama: Yönlendirenin daraltılmış bölümlerine okuma erişimi izni verir.
Yapılandırma: Aşağıdaki boole değerleri, yönlendirenin hangi bölümünün
okunmalıdır. Yönlendiren'in belirli bir bölümü, yalnızca karşılık gelen bölüm
true
. Bu tüm doğru/yanlış değerler true
olarak ayarlanırsa, arayanın tam yönlendiren URL'sini almak için bileşen belirtilmeden getReferrerUrl
'ü çağırması mümkündür. Değer yoksa
ayarlanmışsa varsayılan değer all
olur. Bir değer ayarlanırsa bu değer
bir bileşenin şunlardan biri olduğu bileşen dizisi: protocol
,
host
, port
, path
, query
veya extension
.
queryKeys
:
Sorgu seçilirse şablon yazarı,
çok daha fazla kontrol sağlayabilir. Bu, basit bir anahtar dizisidir.
joker karakterler.
Zorunlu kılma tarihi: getReferrerUrl
, getReferrerQueryParameters
Sorgu imzası: queryPermission('get_referrer', <url_component>)
Örnek kod
const queryPermission = require('queryPermission');
const getReferrerUrl = require('getReferrerUrl');
let referrer;
if (queryPermission('get_referrer', 'query')) {
referrer = getReferrerUrl('queryParams');
}
get_url
Görünen ad: URL'yi okur
Açıklama: Geçerli sayfanın URL'sinin bir kısmını veya tamamını döndürür.
Yapılandırma: Aşağıdaki boole değerleri, URL'nin hangi bölümünün kullanılabileceğini belirler.
okuyun. URL'nin belirli bir bölümü, yalnızca karşılık gelen kısmı
doğru. Arayan,getUrl
tüm URL'yi yalnızca bu boole değerleri true
olarak ayarlanmışsa ve yalnızca. Hiçbir değer
ayarlandıktan sonra varsayılan değer all
olur. Ayarlanan değerin bir dizi olması gerekir
şu bileşenlerden biridir: protocol
, host
,
port
, path
, query
, extension
veya fragment
.
queryKeys
:
Sorgu seçilirse şablon yazarı,
çok daha fazla kontrol sağlayabilir. Bu, basit bir anahtar dizisidir.
joker karakterler.
Zorunlu kılma tarihi: getUrl
Sorgu imzası: queryPermission('get_url', <optional url component>,
<optional query key>)
Sağlanırsa URL bileşeni şunlardan biri olmalıdır: 'protocol'
, 'host'
, 'port'
,
'path'
, 'query'
, 'extension'
, 'fragment'
. Atlanırsa izin
sorgusu, URL'nin tamamına erişim isteğidir.
Sağlanırsa sorgu anahtarı, şablonun çalıştırılacağı sorgu dizesi bağımsız değişkeni kod da okumayı istiyor.
Notlar: Özel bir şablonun geçerli konumdan okuyup okuyamayacağını kontrol eder. Konumun belirli bir kısmıyla sınırlamaya olanak tanır.
Örnek kod
const queryPermission = require('queryPermission');
const getUrl = require('getUrl');
if (queryPermission('get_url', 'query', 'gclid')) {
const gclid = getUrl('query', false, null, 'gclid');
}
inject_hidden_iframe
Görünen ad: Gizli iframe'ler ekler
Açıklama: Belirli bir URL'ye sahip görünmez bir iframe ekler.
Yapılandırma: URL kalıplarının listesi
Zorunlu kılma tarihi: injectHiddenIframe
Sorgu imzası: queryPermission('inject_hidden_iframe', <url>)
Notlar: Özel bir şablonun, görünmez bir iFrame ekleyip ekleyemeyeceğini belirler ve hangi kaynaktan yapabileceğini de gösterir.
Örnek kod
const queryPermission = require('queryPermission');
const injectHiddenIframe = require('injectHiddenIframe');
const url = 'https://www.example.com/iframes';
if (queryPermission('inject_hidden_iframe', url)) {
injectHiddenIframe(url);
}
inject_script
Görünen ad: Komut dosyalarını ekler
Açıklama: Sayfaya bir komut dosyası ekler.
Yapılandırma: URL kalıplarının listesi
Zorunlu kılma tarihi: injectScript
Sorgu imzası: queryPermission('inject_script', <url>)
Notlar: Özel bir şablonun JavaScript ekleyip ekleyemeyeceğini ve yapabildiğini gösterebileceksiniz.
Örnek kod
const queryPermission = require('queryPermission');
const injectScript = require('injectScript');
const url = 'https://www.example.com?api.js';
if (queryPermission('inject_script', url)) {
injectScript(url);
}
logging
Görünen ad: Konsolda günlük olarak gösterilir.
Açıklama: Geliştirici konsoluna ve Google Etiket Yöneticisi önizleme modunda günlük kaydı oluşturur.
Yapılandırma: Üretimde günlük kaydını etkinleştirme seçeneği. Varsayılan olarak yalnızca şu değere ayarlanır:
hata ayıklama/önizleme bölümünde oturum açmayı etkinleştirin. İzin reddedilirse logToConsole
şunları yapar:
hata bildirmez ancak günlük mesajını gizler.
Zorunlu kılma tarihi: logToConsole
Sorgu imzası: queryPermission('logging')
Notlar: Özel bir şablonun geliştirici konsoluna giriş yapıp yapamayacağını kontrol eder.
Örnek kod
const queryPermission = require('queryPermission');
const logToConsole = require('logToConsole');
// Note that it's fine to call log, since the log call will be ignored if
// logging isn't permitted in the current environment.
logToConsole('diagnostic info');
read_data_layer
Görünen ad: Veri katmanını okur
Description: dataLayer içindeki verileri okur.
Yapılandırma: Anahtar eşlemenin sondaki joker karakterle birlikte baştaki noktalı referans dizisi. Anahtar eşleme ifadeleri, veri katmanından hangi özelliklerin okunabileceğini belirler.
Zorunlu kılma tarihi: copyFromDataLayer
Sorgu imzası: queryPermission('read_data_layer', <data layer key to read
from>)
Notlar: Özel bir şablonun veri katmanından okuma yapıp yapamayacağını kontrol eder.
Örnek kod
const queryPermission = require('queryPermission');
const copyFromDataLayer = require('copyFromDataLayer');
const dlKey = 'foo.bar';
if (queryPermission('read_data_layer', dlKey)) {
const dlContents = copyFromDataLayer(dlKey);
}
read_character_set
Görünen ad: Belge karakter kümesini okur
Açıklama: document.characterSet
dilinde okur.
Yapılandırma: Yok
Zorunlu olduğu platformlar: readCharacterSet
Sorgu imzası: queryPermission('read_character_set')
Notlar: Özel bir şablonun document.characterSet
öğesini okuyup okuyamayacağını belirler.
Örnek kod
const queryPermission = require('queryPermission');
const readCharacterSet = require('readCharacterSet');
if (queryPermission('read_character_set')) {
const characterSet = readCharacterSet();
}
read_container_data
Görünen ad: Kapsayıcı verilerini okur
Açıklama: Kapsayıcıyla ilgili verileri okur.
Yapılandırma: Yok
Zorunlu kılma tarihi: getContainerVersion
Sorgu imzası: queryPermission('read_container_data')
Notlar: Özel bir şablonun, kapsayıcıyla ilgili verileri okuyup okuyamayacağını kontrol eder.
Örnek kod
const queryPermission = require('queryPermission');
const getCookieValues = require('getContainerVersion');
let version;
if (queryPermission('read_container_data')) {
version = getContainerVersion();
}
read_event_metadata
Görünen ad: Etkinlik meta verilerini okur
Açıklama: Etkinlik Geri Çağırmalarındaki etkinlik meta verilerini okur
Yapılandırma: Yok
Zorunlu kılma tarihi: addEventCallback
Sorgu imzası: queryPermission('read_event_metadata')
Notlar: Özel bir şablonun, etkinlik meta verilerini şurada okuyup okuyamayacağını kontrol eder: daha fazla bilgi edindiniz.
Örnek kod
const queryPermission = require('queryPermission');
const addEventCallback = require('addEventCallback');
if (queryPermission('read_event_metadata')) {
addEventCallback((containerId, eventMetadata) => {
// Read event metadata.
});
}
read_title
Görünen ad: Belge başlığını okur
Açıklama: document.title
dilinde okur.
Yapılandırma: Yok
Zorunlu kılma tarihi: readTitle
Sorgu imzası: queryPermission('read_title')
Notlar: Özel bir şablonun document.title
öğesini okuyup okuyamayacağını belirler.
Örnek kod
const queryPermission = require('queryPermission');
const readTitle = require('readTitle');
if (queryPermission('read_title')) {
const title = readTitle();
}
send_pixel
Görünen ad: Piksel gönderir
Açıklama: Belirli bir URL'ye GET isteği gönderir. Yanıt değil işlendi.
Yapılandırma: İzin verilen URL kalıplarının listesi.
Zorunlu kılma tarihi: sendPixel
Sorgu imzası: queryPermission('send_pixel', <url>)
Notlar: Özel bir şablonun GET isteği gönderip gönderemeyeceğini ve bunu hangi kaynaktan yapabileceğini açıklayayım.
Örnek kod
const queryPermission = require('queryPermission');
const sendPixel = require('sendPixel');
const url = 'https://www.example.com?foo=3';
if (queryPermission('send_pixel', url)) {
sendPixel(url);
}
set_cookies
Görünen ad: Çerez ayarlar
Açıklama: Belirtilen ad ve parametrelere sahip bir çerez ayarlar.
Yapılandırma: Her biri isteğe bağlı olan, izin verilen çerez adlarını içeren bir tablo
Ad, alan, yol, secure
özelliği ve geçerlilik süresiyle ilgili kısıtlamalar.
Zorunlu kılma tarihi: setCookie
Sorgu imzası: queryPermission('set_cookies', <name>, <options>)
Notlar: Çereze bağlı olarak bir çerezin yazılıp yazılamayacağını belirler.
ad, alan, yol, secure
özelliği ve geçerlilik sonu.
Örnek kod
const queryPermission = require('queryPermission');
const setCookie = require('setCookie');
const options = {
'domain': 'www.example.com',
'path': '/',
'max-age': 60*60*24*365,
'secure': true
};
if (queryPermission('set_cookies', 'info', options)) {
setCookie('info', 'xyz', options);
}
write_data_layer
Görünen ad: Veri katmanını yazar
Açıklama: dataLayer'a veri yazar.
Yapılandırma: Anahtar eşlemenin sondaki joker karakterle birlikte baştaki noktalı referans dizisi. Anahtar eşleme ifadeleri, veri katmanına hangi özelliklerin yazabileceğini belirler.
Zorunlu kılma tarihi: gtagSet
Sorgu imzası: queryPermission('write_data_layer', <data layer key to
write from>)
Notlar: Özel bir şablonun veri katmanına yazma yapıp yapamayacağını kontrol eder.
Örnek kod
const queryPermission = require('queryPermission');
const gtagSet = require('gtagSet');
const dlKey = 'foo.bar';
if (queryPermission('write_data_layer', dlKey)) {
gtagSet({dlKey: 'baz'});
}