2011-08-18 8 views
13

Bazı nedenlerle chrome artık bir document.domain dosyasını desteklemiyor ve bir alt etki alanı içeren iframe'de ve iframe içeren alt etki alanında satır okunurken bir hatanın ortaya çıkmasına neden oluyor. Bunun etrafında zaten var mı?Document.domain için Chrome çözümü

Hata: Yakalanmayan Hata: SECURITY_ERR: DOM İstisna 18

cevap

15

Belge alanı küçük harf olmalı ve kurallar bu şekildedir:

// Actual domain is "www.foo.com" 
document.domain = "foo.com"; // this is valid 

// Actual domain is "bar.foo.com" 
document.domain = "www.foo.com"; // this is invalid, "bar.foo.com" is not a subdomain of "www.foo.com" 

// Actual domain is "blah.bar.foo.com" 
document.domain = "bar.foo.com" // Ok 
document.domain = "foo.com" // Still ok 
document.domain = "bar.foo.com" // Invalid, you can't change it back to a more specific domain. 
+0

Hemen herkes durumda alanlar arası sorunları içine edeceğiz böylece alt alanlar, çok farklı etki olarak kabul edilir

Not bir referans arıyor: https://developer.mozilla.org/en-US/docs/Web/Security/Same-origin_policy – juminoz

0

document.domain sürece aynı etki konum olarak iframe'lerle için çalışması gerekir: Eğer dokümana erişmek çalışıyorsanız

iframe=document.querySelector('iframe'); 
console.log(iframe.contentDocument.domain) 

Üst çerçeveden farklı bir alandaki bir iframe'den, gördüğünüz güvenlik hatasını alırsınız. A question about cross-domain (subdomain) ajax request