簡體   English   中英

使用服務器端解決方案繞過跨域策略來訪問iframe的HTML

[英]Bypass Cross-Domain-Policy to access iframe's HTML with server-side solution

當前,我們正在嘗試訪問動態生成的html元素的HTML(使用javascript)(例如,獲取圖像的url)。 如果html元素僅使用javascript生成-它們沒有問題。 只需通過訪問DOM元素使用javascript提取圖像網址即可。 但是現在我們在使用iframe時遇到了麻煩。

目前的情況是:

  • 我們包含外部腳本文件(www.test.com/script.js),以在我們的網站上創建一個圖庫
  • script.js在我們的網站中生成了一個新的iframe (document.write(“此處為iframe代碼”)); 參考www.test.com/iframe.html)
  • iframe.html再次包含javascript代碼,以通過創建服務器dom元素(div,img,a,p,...)來生成圖庫。

現在我們需要閱讀這些圖像的src屬性。 使用瀏覽器的調試工具,這沒有問題。 沒有iframe,這也沒有問題。 但是使用iframe時,由於瀏覽器的跨域策略,我們無法使用javascript訪問iframe.html的html。

一種可能的解決方案是嘗試使用javascript獲取iframe標記的src,調用服務器端腳本以獲取src-url的html內容,然后通過客戶端上的eval()-function再次運行該內容。

我希望您還有其他更好的方法可以解決該問題。

從您的問題尚不清楚,但是如果您的應用程序正在提供iframe,則可以使用postMessage來在iframe及其父窗口之間進行通信。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM