Ginew.Z 的博客

          一切,為了讓生活更簡單、更自然

            BlogJava :: 首頁 :: 聯系 :: 聚合  :: 管理
            21 Posts :: 0 Stories :: 14 Comments :: 0 Trackbacks

          以前如果要使iframe里面的腳本能訪問parent的內容,但iframe和parent的二級域名相同,那一般都會在兩者都寫上document.domain="xxx.com" 以放寬訪問權限。

          今天發現,如果iframe和parent在同一個三級域名下,比如都是aa.bb.com,那設了document.domain反而會造成訪問拒絕。

          查了下MSDN,有如下解釋:

          Remarks

          The property initially returns the host name of the server from which the page is served. The property can be assigned the domain suffix to allow sharing of pages across frames. For example, a page in one frame from home.microsoft.com and a page from www.microsoft.com initially would not be able to communicate with each other. However, by setting the domain property of both pages to the suffix "microsoft.com", you ensure that both pages are considered secure and access is available between the pages.

          When you set the domain property, use the domain name determined by the server rather than by the client browser.

          All the pages on different hosts must have the domain property explicitly set to the same value to communicate successfully with each other. For example, the value of the domain property of a page on the host microsoft.com would be "microsoft.com" by default. It might seem logical that if you set the domain property of a page on another host named msdn.microsoft.com to "microsoft.com," that the two pages could communicate with each other. However, this is not the case unless you have also explicitly set the domain property of the page on microsoft.com to "microsoft.com".

          Furthermore, this property cannot be used to allow cross-frame communication among frames with different domain suffixes. For example, a page in one frame from www.microsoft.com and a page in another frame from www.msn.com would not be able to communicate with each other even if the domain property of both pages was set to the suffix "microsoft.com".

          security note Security Alert??Using this property incorrectly can compromise the security of your Web site. Set the domain property only if you must allow cross-domain scripting. Use a value determined on the server. Setting this property to a value determined on the client (like through the location object) could expose your site to attack from another site through Domain Name System (DNS) manipulation. For more information, see Security Considerations: Dynamic HTML.

          For more information on domain security, see About Cross-Frame Scripting and Security.

          posted on 2006-04-13 11:54 無風之雨 閱讀(9357) 評論(3)  編輯  收藏 所屬分類: JavaScript

          Feedback

          # re: document.domain與域名的問題 2012-07-26 13:48 問學堂
          嗯,學習了,謝謝!  回復  更多評論
            

          # re: document.domain與域名的問題 2012-07-29 18:02 jdwx
          document.domain跨域問題,學習了,謝謝。  回復  更多評論
            

          # re: document.domain與域名的問題 2013-05-31 08:03 lsb
          好值得學習  回復  更多評論
            

          主站蜘蛛池模板: 双鸭山市| 大渡口区| 蓬莱市| 桓台县| 都昌县| 阿克陶县| 栾川县| 昌吉市| 如皋市| 汤原县| 阿城市| 萍乡市| 东宁县| 余江县| 扶沟县| 凤阳县| 昆山市| 台东县| 五家渠市| 石河子市| 慈利县| 乐亭县| 乐昌市| 旌德县| 丹凤县| 罗山县| 大厂| 肥东县| 庆阳市| 全椒县| 尖扎县| 大宁县| 宁津县| 马公市| 资源县| 贵州省| 宁化县| 石林| 华池县| 嘉荫县| 丰城市|