2013-04-18 31 views
10

Tôi có câu hỏi liên quan đến chính sách Gốc giống nhau. Công ty của tôi có nhiều tên miền phụ và trong một trong số họ, họ muốn một khung nội tuyến với một tên miền phụ khác bên trong nó và điền vào biểu mẫu của iframe. Tôi đã đọc về thuộc tính document.domain và rằng tôi sẽ cần phải đặt trên tất cả ba miền, nhưng không thể dễ dàng kiểm tra điều này do mỗi tên miền phụ thuộc về một bộ phận khác. Vì vậy, đây là câu hỏi của tôi.Chính sách xuất xứ tương tự - Tên miền phụ và Tên miền gốc

Điều này có thể xảy ra khi các tên miền phụ đều là https và miền gốc không? Tôi đã xem các ví dụ trên wikipedia, nhưng điều đó không giúp tôi. Mọi sự trợ giúp sẽ rất được trân trọng.

Ví dụ:

https://x.company.org

https://y.company.org

http: //company.org

x.company.org sẽ có một trang với một khung nội tuyến của y.company.org mà có một biểu mẫu mà chúng tôi muốn tự động điền.

(Tôi biết các liên kết bị phá vỡ, nhưng đó là bởi vì tôi không thể đăng bài nhiều sau đó 2 liên kết)

Trả lời

13

Những điều đó xác định một miền trong bối cảnh này là giao thức, cổng và tên miền để http://abc.comhttps://abc.com là được xem xét các tên miền khác nhau bởi trình duyệt của bạn (http vs https).

http://en.wikipedia.org/wiki/Same_origin_policy#Origin_determination_rules

https://x.company.orghttps://y.company.org cũng được coi là lĩnh vực riêng biệt nhưng họ có thể vừa thư giãn khung cảnh miền của họ để https://company.org và cross-giao tiếp.

http://en.wikipedia.org/wiki/Same_origin_policy#document.domain_property

Có một tùy chọn có sẵn cho bạn bây giờ như HTML5 là trong tất cả các trình duyệt chính. Sử dụng HTML5 postMessage bạn có thể giao tiếp trên các miền, giả sử miền nhận muốn chấp nhận thông báo và trả lời.

http://html5demos.com/postmessage2

+0

Cảm ơn bạn đã trả lời. Chỉ cần làm rõ câu trả lời của bạn, khi bạn nói họ có thể thư giãn cài đặt miền sang miền gốc. Liệu tên miền gốc cũng phải sử dụng cùng một giao thức? Ngoài ra, rất tiếc, chúng tôi không thể sử dụng bài đăng vì hầu hết người dùng của chúng tôi vẫn đang sử dụng IE7 và IE8. –

+2

Tôi hiểu ví dụ của bạn để nói rằng x.company.org sẽ lưu trữ y.company.org trong iframe. Trong trường hợp đó, cả hai trang nên làm docoument.domain = "company.org" để làm việc này: http://javascript.info/tutorial/same-origin-security-policy#the-document-domain-exception – u2702

+0

Tuyệt vời, cảm ơn bạn. Liên kết thực sự hữu ích. – Sebas

Các vấn đề liên quan