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
          好值得學習  回復  更多評論
            

          主站蜘蛛池模板: 康马县| 岱山县| 吴忠市| 福建省| 阿克苏市| 通渭县| 舒城县| 鹤壁市| 斗六市| 含山县| 嘉兴市| 临江市| 孙吴县| 齐齐哈尔市| 瑞安市| 安新县| 平遥县| 吐鲁番市| 昌都县| 龙州县| 阳谷县| 宣武区| 屯留县| 陆良县| 武城县| 达孜县| 浦城县| 迭部县| 德钦县| 秦皇岛市| 营山县| 通州区| 黄山市| 正安县| 大名县| 昆山市| 萍乡市| 信丰县| 盱眙县| 金华市| 乌兰察布市|