Câu hỏi Giải pháp Chrome cho document.domain


Vì một số lý do, chrome không hỗ trợ document.domain nữa và phát ra lỗi khi dòng được đọc trong iframe chứa tên miền phụ và tên miền phụ chứa iframe. Có cách nào để khắc phục điều này?

Lỗi: Lỗi không bắt buộc: SECURITY_ERR: Ngoại lệ DOM 18


15
2017-08-18 06:12


gốc




Các câu trả lời:


Miền tài liệu phải là chữ thường và các quy tắc giống như sau:

// 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. 

17
2018-03-20 10:33



Chỉ trong trường hợp bất cứ ai đang tìm kiếm một tài liệu tham khảo: developer.mozilla.org/en-US/docs/Web/Security/… - juminoz


document.domain nên làm việc cho iframe miễn là bạn đang ở trên cùng một tên miền:

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

Nếu bạn đang cố gắng truy cập tài liệu của iframe trên miền khác với khung chính, bạn sẽ gặp phải lỗi bảo mật mà bạn đang gặp phải.

Lưu ý rằng tên miền phụ được coi là các tên miền khác nhau, vì vậy bạn sẽ gặp phải các vấn đề về tên miền chéo: Câu hỏi về yêu cầu ajax tên miền chéo (tên miền phụ)


0
2017-08-18 18:34