Chrome 130, createWorklet()
ve addModule()
ile kaynak ötesi iş parçacığı komut dosyalarının kullanılmasını sağlamak için Shared Storage API'de değişiklikler yapar. Ayrıca, Chrome 132'de, kayıtlı sorguların desteğiyle Paylaşılan Depolama Alanı'na sahip Seç URL API'sinde güncellemeler sunuyoruz.

Chrome 130'da Shared Storage API ile kaynak arası iş parçacıkları
Kaynaklar arası işleyici komut dosyalarıyla çalışırken size daha fazla esneklik sunmak için Chrome 130'ta Shared Storage API'de değişiklikler yaptık.
Neler değişti?
addModule()
için aynı kaynak kısıtlamasını kaldırdık. Artık herhangi bir kaynaktan iş parçacığı komut dosyası yükleyebilirsiniz. Kaynaklar arası işleyici komut dosyaları, işleyici komut dosyalarını CDN'lerde barındırma gibi önemli kullanım alanlarını etkinleştirir. Worklet komut dosyası, çağıran tarama bağlamıyla farklı bir kaynakta olduğunda, paylaşılan depolamaya erişmek için çağıran bağlamın kaynağı veri bölümü kaynağı olarak kullanılır.
Yeni addModule()
davranışıyla eşleşip olası karışıklıkları azaltmak için dataOrigin
mülkü, createWorklet()
çağrısına eklendi. Bu sayede, createWorklet()
çağrısını yapan tarama bağlamından farklı bir paylaşılan depolama alanı veri bölümüne okuma ve yazma yapılabilir. Bu sayede, kaynak arası iş parçası komut dosyaları kullanırken bile her bir iş parçasının hangi kaynağın ortak depolama alanına eriştiği üzerinde daha ayrıntılı kontrol sahibi olabilirsiniz.
Değişiklik nasıl oldu?
Chrome 125'ten itibaren, bir sayfadaki üçüncü taraf çapraz kaynak komut dosyası, createWorklet(url)
çağrısı yaparak çapraz kaynak iFrame'lere gerek kalmadan çapraz kaynak iş parçacığı oluşturabilir. Daha önce createWorklet(url)
, çağrılma bağlamından bağımsız olarak veri bölümü kaynağı olarak komut dosyası URL'sini (url
) kullanıyordu.
Chrome 130'ta, yeni addModule()
davranışıyla uyumlu olması için createWorklet()
, varsayılan veri bölümü kaynağı olarak çağıran bağlamı da kullanır. Veri bölümü kaynağı olarak komut dosyası URL'si kaynağını kullanmaya devam etmek için veri bölümü kaynağını açıkça ayarlamanıza olanak tanıyan yeni bir özellik dataOrigin
kullanıma sunulmaktadır.
Yeni dataOrigin
mülkü, veri bölümünün kaynağını komut dosyasının kaynağı olarak ayarlayan "script-origin"
ve veri bölümünün kaynağını çağıran tarama bağlamının kaynağı olarak ayarlayan "context-origin"
değerlerini kabul eder. Gelecekteki bir sürümde, bir iş parçacığı komut dosyasının isteğe bağlı olarak rastgele bir kaynaktan paylaşılan depolama verilerine erişebileceği özel veri bölümü kaynaklarını da desteklemeyi planlıyoruz.
Veri kaynağı "script-origin"
olarak ayarlanmış bir kaynakta çapraz komut dosyası yüklenirken tarayıcıdan gönderilen komut dosyası isteği bir "Sec-Shared-Storage-Data-Origin: <origin>"
başlığı içerir. Bunu etkinleştirmek için komut dosyasında "Shared-Storage-Cross-Origin-Worklet-Allowed: ?1"
etkinleştirme yanıtı üstbilgisi de bulunmalıdır.
Nasıl kullanılmalı?
createWorklet()
'ü, iş parçacığının veri bölümü kaynağı olarak komut dosyası kaynağıyla zaten kullanıyorsanız createWorklet()
'ü aşağıdaki gibi ayarlayabilirsiniz:dataOrigin
sharedStorage.createWorklet(scriptUrl, {dataOrigin: "script-origin"});
createWorklet()
, kaynak ötesi veri bölümü ve birden fazla iş parçacığı oluşturmanıza olanak tanıdığından addModule()
yerine createWorklet()
'e geçiş yapmanızı öneririz.
Geliştirici dokümanlarını bu değişiklikleri yansıtacak ve daha fazla rehberlik sağlayacak şekilde güncelledik.
Chrome 132'de Select URL API ile kayıtlı sorgular
Chrome 132'de, kayıtlı sorguların desteğiyle Paylaşılan Depolama Alanı'nda Select URL API ile ilgili güncellemeler kullanıma sunuyoruz.
Neler değişecek?
Seçili URL API'sinde şu anda her sayfa yüklendiğinde API'ye yapılan çağrı sayısını kısıtlayan sayfa yükleme başına iki bütçe vardır. Sorguları sayfa bazında kaydedip yeniden kullanma özelliğini kullanıma sunuyoruz. Kayıtlı bir sorguyu kullandığınızda, kayıtlı sorgu ilk kez çalıştırıldığında sayfa yükleme başına bütçeler alınır ancak aynı sayfa yükleme sırasında kayıtlı sorgunun sonraki çalıştırmaları için bütçe alınmaz.
Kayıtlı sorguları uygulama
Chrome 132 sürümünden itibaren, selectURL()
seçeneklerinde sorgunun adıyla birlikte savedQuery
parametresini kullanabilirsiniz:
await sharedStorage.selectURL('experiment', urls, {
savedQuery: 'control_or_experiment',
keepAlive: true
});
Takip sorgularının aynı bütçeden faturalandırılmasını sağlamak için selectURL()
çağrısı için her seferinde aynı savedQuery
adını kullanın.
Belgeleri bu değişiklikleri yansıtacak ve selectURL()
için bütçe oluşturma hakkında ek ayrıntılar sağlayacak şekilde güncelledik.
Etkileşim kurma ve geri bildirim paylaşma
Shared Storage API önerisinin aktif olarak tartışılıp geliştirildiğini ve bu nedenle değişiklik olabileceğini unutmayın.
Shared Storage API hakkındaki görüşlerinizi öğrenmek isteriz.
- Teklif: Ayrıntılı teklifi inceleyin.
- Tartışma: Soru sormak ve analizlerinizi paylaşmak için devam eden tartışmaya katılın.
Gelişmeleri takip edin
- Posta Listesi: Paylaşılan Depolama API'si ile ilgili en son güncellemeler ve duyurular için posta listemize kaydolabilirsiniz.
Yardıma mı ihtiyacınız var?
- Geliştirici desteği: Diğer geliştiricilerle bağlantı kurun ve Privacy Sandbox Geliştirici Desteği deposunda sorularınızın yanıtlarını alın.