2010-10-22 22 views

回答

0

你有沒有嘗試過這樣的:

var pageURL:String = stage.loaderInfo.url; 
+0

返回swf的url,而不是swf加載的頁面的url。 – bobpoekert 2010-10-22 16:15:28

+0

你能通過FlashVars參數將頁面的URL傳遞給swf嗎?這樣做的缺點是你可能會手動將其添加到嵌入文件的頁面中。 – cmann 2010-10-22 22:18:29

+0

這可以是平凡的僞造。 – bobpoekert 2010-10-23 07:15:26

0
loaderInfo.loaderURL 
+0

當swf被嵌入並且沒有被另一個swf加載時,它是否工作?文檔將不會提示。 – bobpoekert 2010-10-22 16:17:18

0

事實證明,有這樣做的直接方式。但是,您可以執行以下操作:

  1. 有路徑SWF去腳本在服務器上
  2. 有一個腳本讀取引薦[原文]頭和302的靜態文件所在的服務器的swf文件是,將引用者的值放入變量中
  3. 解析URL(從loaderInfo.url獲取),並提取您添加的變量。

爲了防止被僞造該值(由人直接鏈接到靜態文件服務器,跳過重定向),你必須有你的靜態文件服務器驗證GET變量的值是一樣的在提供文件之前在referer頭文件中的值(我知道你可以在nginx中做)。

+0

「事實證明,沒有直接的方法來做到這一點。」 不真實。請參閱@ kontur使用'flash.system.Security.pageDomain'的正確答案。 – 2013-12-29 06:48:53

相關問題