2010-02-24 159 views
2

我知道這個主題已經有幾個線程可用,但我想要其他人對此的意見。跨域Cookie讀取/設置跨瀏覽器

有兩種方法來設置/讀取跨域餅乾:

  1. 創建的IFrame上A.com指向B.com上一個網頁,其中創建的cookie,並通過創建另一個IFrame的傳遞信息B.com方指向A.com,使用window.name或位於location.href.hash
  2. A.com頁面對B.com Web服務/頁面進行XHR/JSONP調用,該頁面包含以下標題和它也設置cookie並返回值。

的AddHeader( 「P3P」, 「CP = \」 IDC DSP COR ADM德維戴氏PSA PSD IVAi IVDI CONI他對我們IND CNT \ 「」)

由於我們沒有獲得所有postMessage做瀏覽器,我相信我們必須去處理上面提到的其中一種情況。

我的問題是哪一個更好的方法(更清潔)以及爲什麼要實現跨瀏覽器。使用任何其他JS框架不在本討論的範圍內。如果還有更好的方法,請在此提及!

感謝您提前給出的智能輸入! :)

回答

2

看看EasyXDM。它是一個包裝跨瀏覽器怪癖的庫,它提供了一個易於使用的API,使用該瀏覽器的最佳可用機制(例如postMessage,如果可用,其他機制,如果不可用)在不同域之間進行客戶端腳本通信。注意:您需要對兩個域進行控制才能使其正常工作(其中「控制」意味着您可以在兩者上放置靜態文件)。

+0

感謝您的回答。我測試過調用第三方(不同域名)的java腳本,並設置cookie(在該域中),並使用回調函數返回相同的值。那效果很好。唯一需要注意的是對該第三方域名擁有P3P政策。 – 2010-05-25 19:57:52