Meta etiketler, başlıklar ve komut dosyalarındaki deneme jetonlarıyla ilgili yaygın sorunları giderin.
Yapılacaklar listesi
Kaynak denemesinde sorun gidermek için sağlanan bağlantıları kullanarak aşağıdaki sorunların her birini çözün.
Yenilikleri inceleyin.
Aşağıdaki demolarda, kaynak deneme jetonu sağlama ve deneme özelliğine erişme yöntemlerinin her biri gösterilmektedir:
- ot-meta.glitch.me:
origin-trial
meta etiketindeki jeton - ot-header.glitch.me:
Origin-Trial
yanıt başlığındaki jeton - ot-3p.glitch.me: Üçüncü taraf komut dosyası tarafından yerleştirilen jeton
- ot-iframe.glitch.me: iframe'de erişilen kaynak deneme özelliği
- ot-iframe-3p.glitch.me: kaynaklar arası iframe örnekleri
Jetonları kontrol etmek için Chrome Geliştirici Araçları'nı kullanma
Geliştirici Araçları, Chrome 93'ten itibaren kaynak deneme bilgilerini şurada sağlar: Seçili çerçeve için uygulama paneli.
Bir alt çerçevede kullanılabilen kaynak deneme jetonlarını incelemek için üst çerçeveyi genişletin. Örneğin, ot-iframe.glitch.me adresindeki demo sayfasında sayfanın iframe bir jeton sağlar.
- Jeton Durumu: Sayfanın geçerli bir jetonu olup olmadığı. Bazı kaynak denemelerinde diğer faktörler (ör. coğrafi kısıtlamalar), kaynak denemesi özelliğinin geçerli bir jeton olmasına rağmen kullanılabilir. Chrome Geliştirici Araçları durum kodları , kaynak denemelerine ilişkin her bir kodun anlamını açıklar.
- Kaynak: The Web Kaynağı jeton.
- Expiry Time: Jeton için mümkün olan maksimum (en son) geçerlilik bitiş tarihi/saati. deneme süresinin sonuyla eşleştirin. Bu, görüntülenen jetonun geçerlilik bitiş tarihiyle aynı değildir Kayıtlarım'da , jetonun şu anda ne kadar süre için geçerli olduğunu ve genişletilebilir.
- Kullanım Kısıtlaması: Bazı denemeler için ayarlanabilir kullanım sınırları.
- Üçüncü Taraf: Üçüncü taraf eşleştirmenin anahtar için etkinleştirildiğinden emin olun. Bu özellik, deneme özelliğinin birden fazla siteden üçüncü taraf komut dosyaları kullanılarak erişilebilir.
- Alt Alanları Eşleştir: Alt alan adı eşleştirme anahtar için etkinleştirildiğinden emin olun. Bu, kaynak deneme özelliğinin birden fazla ve her alt alan adı için farklı jeton gerektirmeden bir kaynak alt alan adlarında kullanılabilir.
Deneme sürümü mevcut değilse Chrome Geliştirici Araçları, deneme adının yanında bir uyarı gösterir jetonun süresi dolmuşsa veya başka kısıtlamalar varsa geçerli olduğundan emin olun.
Chrome Geliştirici Araçları durum kodları
Süresi doldu: Jetonun geçerlilik bitiş tarihi geçmiştir. Jetonun yenilenmesi gerekiyor. yeni bir son kullanma tarihine sahip yeni bir jeton oluşturmanız gerekir.
. Kaynak koduFeatureDisabled: Deneme, şu anda kullanım için devre dışıdır.
. Kaynak koduFeatureDisabledForUser: Bu jeton, bir kısıtlayın. "Kullanıcı Alt Kümesi Hariç Tutmaları"nı inceleyin tasarım dokümanı bölümüne gidin.
Kaynak kodu 1
Kaynak kodu 2Güvenli değil: İsteğin kaynağı güvenli değildir ve deneme, güvenli olmayan kaynaklar için etkinleştirilmemiştir. Kaynak deneme jetonu doğrulayıcı kodunda açıklandığı gibi: Üçüncü taraf jetonları için hem mevcut kaynak hem de komut dosyası kaynağı güvenli olmalıdır. Kaynak: alt alan adı eşleşiyorsa jeton kaynağı, sağlanan komut dosyalarından biriyle tam olarak eşleşmeyebilir kaynaklarınız varsa ve sonuç hangi belirli kaynakla eşleştiğini belirtmez. Bu, eğer bir uygun komut dosyası kaynağını bulmak için doğrudan arama yapın. Tüm kaynak karşılaştırmalarını yeniden yapmaktan kaçınmak için kaç komut dosyası kaynağının sağlandığına bağlı olan kısayollar vardır. En az olmalıdır ya da üçüncü taraf jetonu başarıyla doğrulanamaz."
. Kaynak koduInvalidSignature: Jetonun geçersiz veya hatalı bir imzası var.
. Kaynak koduYanlış biçimlendirilmiş: Jeton hatalı biçimlendirilmiş ve ayrıştırılamadı.
. Kaynak kodu
NotSupported: Jeton tarafından tanımlanan kaynak denemesi Chromium'da desteklenmez "embedder": Chrome veya Edge gibi bir tarayıcı, Web Görünümü ya da başka bir kullanıcı aracısı.
. Kaynak koduBaşarılı: Jeton iyi bir şekilde oluşturulmuş, süresi dolmamış, bir kaynak deneme özelliğiyle eşleşiyor ve beklenen bir kaynaktan istendi.
. Kaynak koduTokenDisabled: Jeton, devre dışı olarak işaretlendi ve kullanılamaz.
. Kaynak koduTrialNotAllowed: Kaynak denemesi geçerli kullanıcı tarafından kullanılamaz.
. Kaynak koduUnknownTrial: Jeton, bilinen herhangi bir denemeyle eşleşmeyen bir özellik adı belirtir.
. Kaynak koduWrongOrigin: İstek kaynağı, jetonda belirtilen kaynakla eşleşmiyor. Bu şema, ana makine adı veya bağlantı noktasını ekleyin. Bu durum, bir üçüncü taraf jetonu olduğunda da gösterilir değeri harici bir JavaScript dosyası yerine bir HTTP üstbilgisi, meta etiket veya satır içi komut dosyası içinde sağlanır.
. Kaynak koduWrongVersion: Yanlış jeton sürümü: Şu anda yalnızca jeton 2 ve 3 sürümü desteklenmektedir.
. Kaynak kodu
Çalışmıyor! 🤔
Kaynak denemeniz beklendiği gibi çalışmıyorsa aşağıdaki koşulları karşıladığınızdan emin olun.
Chromium veya başka bir tarayıcıda değil, Chrome'da test ediyorsunuz
Chrome kaynak denemeleri, Chrome kullanıcıları için çalışacak şekilde tasarlanmıştır. Chrome kaynak deneme jetonlarını kullanma Chromium ve diğer Chromium tabanlı tarayıcılarda deneme özelliklerini etkinleştirin. Bunun nedeni, Chrome kaynak denemelerinin Chrome'da olanak sağlar.
Kaynak denemeleri Firefox ve Microsoft Edge için de kullanılabilir. Firefox veya Edge kaynak denemesine kaydolduğunuzda Chrome'daki bir özellik etkinleştirilmez.
Sitenize erişen Chrome sürümleri için kaynak denemesi etkinleştirildi
Deneme sürümlerine erişim Chrome'un belirli sürümleriyle sınırlıdır. Bazı durumlarda bu, deneme özelliği yalnızca kararlı sürüm öncesi Chrome kanallarında kullanılabilir: Canary, Yeni geliştirilenler ve Beta.
Sürümün kullanılabilirliğini kayıt sayfasından kontrol edebilirsiniz deneme için:
Kullandığınız Chrome sürümünü chrome://version adresinden kontrol edebilirsiniz.
Kaynak denemesi Chrome ayarları tarafından devre dışı bırakılmaz
Tek bir kullanıcı bir özelliğin kendisi için çalışmadığını bildirirse özelliğin çalışıp çalışmadığını kontrol edin.
Chrome ayarlarında devre dışı bırakılmış olabilir. Örneğin, Özel Korumalı Alan
özellikler chrome://settings/privacySandbox
sayfasından devre dışı bırakılabilir.
Anahtar kelimeler ve söz dizimi doğru
Kaynak deneme jetonları için uygun anahtar kelimeleri ve söz dizimini kullandığınızdan emin olun.
Birinci taraf kullanımı için origin-trial
meta etiketinde jeton sağlanabilir:
<meta http-equiv="origin-trial" content="Aj4DysCv3VjknU3...">
Alternatif olarak, Origin-Trial
yanıt başlığında bir jeton sağlanabilir. Elektronik tablo
kullanarak yapılmış
Node.js'de Ekspres:
app.use(function(req, res, next) {
res.setHeader('Origin-Trial', 'Aj4DysCv3VjknU3...')
next();
});
Jetonlar, JavaScript kullanılarak da sağlanabilir:
function addTrialToken(tokenContents) {
const tokenElement = document.createElement('meta');
tokenElement.httpEquiv = 'origin-trial';
tokenElement.content = tokenContents;
document.head.appendChild(tokenElement);
}
Birinci taraf jeton kaynağı sayfa kaynağıyla eşleşiyor
Denemeye kaydolduğunuzda seçilen Web Origin değerinin etiketi sağlayan meta etiketi veya başlığı içeren sayfa.
Örneğin, Web Kaynağı olarak https://example.com
'yi seçtiyseniz:
Şuna benzer bir jeton değeri alabilirsiniz:
Bu değerin, sorun giderdiğiniz sayfada kullanılan jetonla eşleştiğinden emin olun.
Meta etikette sağlanan bir jeton için HTML'yi kontrol edin:
<meta http-equiv="origin-trial" content="Aj4DysCv3VjknU3...">
Başlıkta sağlanan bir jeton için jeton değerini Yanıt Başlıkları altındaki Chrome Geliştirici Araçları Ağ paneli:
Birinci taraf jeton, bunu kullanan kaynaktan sunulur
Kaynağınızdan sunulan bir sayfada yer alan kod için kaynak deneme özelliğine erişimi etkinleştirmek için: meta etikette veya başlıkta ya da aynı kaynaktan JavaScript aracılığıyla bir deneme jetonu sağlamalıdır.
Bir jeton için kaydedilen kaynak, jetonu sunan kaynakla eşleşmelidir.
Üçüncü taraf jeton kaynağı komut dosyası kaynağıyla eşleşiyor
Başka kaynaklara yerleştirilen komut dosyaları için bir kaynak denemesine katılmak üzere kaydolabilirsiniz.
Örneğin, javascript-library.example
projesinden sunulan komut dosyalarının
javascript-library.example
için üçüncü taraf eşleştirmeyle bir jeton kaydetmeniz gerekir.
Üçüncü taraf jetonun kaynak değeri, jetonu yerleştiren komut dosyasının kaynağıyla eşleşmelidir.
Üçüncü taraf komut dosyası, bir üçüncü taraf jetonu kullanıyor
Bir üçüncü taraf komut dosyasının sitenizdeki bir kaynak denemesine katılmasını sağlamak için yalnızca şunu yaparak etkinleştiremezsiniz: komut dosyası için değil, kaynağınız için bir jeton kaydeder.
Üçüncü taraf komut dosyalarının, komut dosyası üzerinden yerleştirilen ve üçüncü taraf eşleştirmenin etkinleştirildiği jetonlar kullanması gerekir (sitenizdeki bir meta etikete veya başlığa dahil edilmez) aşağıdaki gibi bir kod kullanarak oluşturun:
function addTrialToken(tokenContents) {
const tokenElement = document.createElement('meta');
tokenElement.httpEquiv = 'origin-trial';
tokenElement.content = tokenContents;
document.head.appendChild(tokenElement);
}
Üçüncü taraf jetonu bir meta etiket, HTTP başlığı veya satır içi komut dosyası aracılığıyla değil, harici bir komut dosyası aracılığıyla sağlanır
Üçüncü taraf jetonları, bunları yerleştiren komut dosyasının kaynağına göre ancak satır içinde doğrulanır.
Statik işaretlemedeki komut dosyalarının ve <meta>
etiketlerinin bir kaynağı (ör. kaynak URL'si) yok.
Bu, üçüncü taraf jetonunun <meta>
etiketi içinde değil, harici bir komut dosyası aracılığıyla sağlanması gerektiği anlamına gelir.
veya satır içi komut dosyası kullanın. Jetonu yerleştiren harici komut dosyasının
içeren sayfayla aynı kaynak veya komut dosyasının kaynağı eşleştiği sürece farklı bir kaynak
Deneme için kayıtlı bir kaynak.
Bunun bir demosunu ot-iframe-3p.glitch.me adresinde görebilirsiniz.
Kaynak denemesi özelliğine erişim, deneme jetonu sağlamak için kullanılan yöntemde desteklenir
Kaynak deneme özelliklerine erişim için belirli bir yöntemle deneme jetonu sağlamanız gerekir.
Örneğin, hizmet çalışanları ve paylaşılan çalışanlar için kaynak deneme erişimini etkinleştirmenin tek yolu
Origin-Trial
başlığında bir jeton sağlar.
Alt alan adında kullanılan bir jeton için alt alan adı eşleştirme etkinleştirildi
Kaynak deneme özelliği sitenizdeki bazı sayfalarda çalışmıyorsa bunları sunan alt alan adları için jetonların doğru şekilde ayarlandığından emin olun.
Bir kaynak denemesine kaydolduğunuzda, isteğe bağlı olarak kaynak:
Alt alan adlarını üçüncü taraf jetonları için de eşleştirebilirsiniz:
Alt alan jetonları verilmeyecek Genel Son Ek Listesi'ndeki kaynaklar için geçerlidir. Örneğin, https://appspot.com veya https://github.io gibi bir kaynak (örneğin, alan adları için kaydolabilirsiniz) (örneğin, https://example.appspot.com veya https://example.github.io).
Jeton hâlâ geçerli
Jetonlar, oluşturulduktan sonra altı hafta boyunca geçerlidir. Bunun ötesinde, teslim ettiğiniz sorunlar geçerlilik süresini uzatın. Web Geliştiricileri İçin Kaynak Denemeleri Kılavuzu, jetonunuzun tüm kaynak denemesi için geçerli olduğunu doğrulayın.
Chrome Kaynak Denemelerinizde etkin jeton olup olmadığını Kayıtlarım sayfasında kontrol edebilirsiniz:
Jeton hâlâ geçerliyse Chrome Geliştirici Araçları, Success
durumunu gösterir:
Jetonunuzun süresi dolduysa Geliştirici Araçları, Expired
durumunu ve jetonunuzu
Kayıtlarım sayfasında Süresi Dolmuş Jetonlar bölümü görüntülenir.
Kaynak denemesi sona ermedi
Kaynak denemesinin bitiş tarihini kayıt sayfasından kontrol edebilirsiniz:
Sona eren denemeler için Geliştirici Araçları şuna benzer bir sayfa gösterir:
Geri bildirim gerektiğinde veya bir jetonun süresi dolmak üzereyken otomatik e-postalar gönderilir deneme süresi sona erdiğinde gelir.
Kaynak denemesi geçerli kullanıcı için kullanılabilir
Geçerli bir jeton sağlansa bile bazı kaynak denemeleri belirli kullanıcılar tarafından kullanılamaz.
Geçerli kullanıcı için deneme süresi mevcut değilse Chrome Geliştirici Araçları bir TrialNotAllowed
uyarısı gösterir:
Her kaynak denemesi için kullanım kısıtlamaları ve kullanılabilirlik hakkında bilgi sağlanır.
Tüm web platformu özelliklerinde olduğu gibi özellik algılama özelliğini kullanmanız gerekir. deneyin.
Kaynak denemesi kullanım kısıtlamaları aşılmadı
Varsayılan olarak, deneme için geçerli bir jetonu olan her sayfada kaynak deneme özelliği etkinleştirilir.
Bununla birlikte, nadir durumlar dışında, kaynak deneme sürümü kullanımı tüm Chrome sayfa yüklemelerinin en fazla% 0,5'i ile sınırlıdır. Tüm Chrome kullanıcılarının toplam kullanımı ilgili miktarı aşarsa kaynak deneme özelliği devre dışı bırakılır. Geliştirici Araçları, jeton durumunu devre dışı olarak gösterir.
Bu çalışmalarda, risksizdir ve büyük bir orana geçiş riski taşımadığından, web'in deneme sürümü özelliğine bağlı.
Bazı denemelerde kullanımı sınırlama seçeneği de sunulur. Bu durumda, kaynak deneme özellikleri bazı kullanıcılar için devre dışı bırakıldı. Bu seçenek, kaynağın kayıt sayfasından sunulur bir deneme sürümü:
Kullanıcılarınızın kaynak deneme özelliğine erişiminin beklenenden daha düşük olduğunu fark ederseniz 'Standart Limit'in seçili olduğundan emin olun.
iFrame'ler kendi jetonlarını sağlar
Bir iframe, kaynak deneme özelliğine erişime izin vermek için meta etikette bir jeton, HTTP veya programatik olarak kullanılabilir. iFrame'ler için etkinleştirilen özelliklere erişimi devralmaz içeren sayfalardır.
ot-iframe.glitch.me, bir kaynak deneme özelliğine erişimi gösterir diğeridir. ot-iframe-3p.glitch.me, birden çok kaynaklar arası iframe örneklerine göz atın.
İzin politikaları doğru şekilde yapılandırılmış
Bazı kaynak denemesi özellikleri bir Permissions-Policy
dan etkilenebilir
(eski adıyla Feature-Policy
üstbilgisi). Bunu
Deneme Amacı
veya bu özelliğin web.dev adresindeki geliştirici dokümanlarında bulabilirsiniz
veya developer.chrome.com/blog adresini ziyaret edin.
Erişmeye çalıştığınız özelliğin Permissions-Policy
tarafından engellenmediğinden emin olun
yönergesini inceleyin. Chrome Geliştirici Araçları Ağ panelinde yanıt başlıklarını kontrol edebilir ve
İzin verilen özelliklerin tam listesini Uygulama panelinde görebilirsiniz.
İşçiler ne olacak?
Kaynak denemesi özellikleri hizmet çalışanları, paylaşılan çalışanlar ve özel
birlikte çalışır. Ancak Service Worker'lar ve paylaşılan çalışanlar için erişimi etkinleştirmenin tek yolu
Origin-Trial
başlığında bir jeton bulunur.
Özel çalışanlar, üst dokümanları tarafından etkinleştirilen özelliklere erişimi devralır.
Jeton, özelliğe erişilmeden önce sağlanır
Bir deneme özelliğine erişilmeden önce kaynak deneme jetonunun sağlandığından emin olun. Örneğin, bir sayfa JavaScript aracılığıyla bir jeton sağlıyorsa, jetonu sağlayacak kodun deneme özelliğine erişmeye çalışan koddan önce çalıştırılır.
Kaynak denemesi demoları
- Meta etiketteki jeton
- Başlıktaki jeton
- iframe'de erişilen özelliğe
- Üçüncü taraf komut dosyası tarafından yerleştirilen jeton
- ot-iframe-3p.glitch.me: kaynaklar arası iframe örnekleri
Daha fazla bilgi
- Chrome'un kaynak denemelerini kullanmaya başlama
- Üçüncü taraf kaynak denemeleri
- Web geliştiricileri için kaynak denemeleri kılavuzu
- Kaynak denemesi açıklayıcısı
- Kaynak denemesi çalıştırma
- Chromium'da yeni özellikleri kullanıma sunma süreci
- Açıklama amacı: Blink gönderim sürecini açıklığa kavuşturmak
- Microsoft Edge'de kaynak denemelerini kullanma
- Firefox için kaynak denemeleri