2012-09-10 25 views
8

我有從假鏈接下載圖片的代碼。我看過別人的意見/網站,但什麼也沒幫我找到解決惱人:無法加載資源:幀加載中斷 - Agian

「無法加載資源:框架加載中斷」

我的PHP頭是在我讀GET值:

header("Pragma: public"); // required 
header("Expires: 0"); 
header("Cache-Control: private",false); // required for certain browsers 
//header('Content-Length: '. @filesize($id)); 
header('Content-Type: '.$mim); 
header('Content-Disposition: attachment; filename="'.$date.basename($fileName).'"'); 
header('Content-Transfer-Encoding: binary'); 
header('Cache-Control: must-revalidate, post-check=0, pre-check=0'); 
readfile($fileName); 

,我有jQuery腳本它調用一個iframe來下載文件:

$('body').append('<iframe class="download" src="download.php?id='+downloading+'" style="visibility:hidden;" width="0" height="0"></iframe>'); 

我下載文件正確,但顯示了次錯誤e控制檯,請讓我知道它的固定?

回答

3
header("Pragma: public"); // required 
header("Expires: 0"); 
header("Cache-Control: must-revalidate, post-check=0, pre-check=0"); 
header("Cache-Control: private",false); // required for certain browsers 
header("Content-type: application/x-unknown"); // I always use this 
header("Content-Disposition: attachment; filename='theFilename.ext'"); 
header("Content-Transfer-Encoding: binary"); 
header("Content-Length: 177998"); // you might want to set this 
readfile('/the/url/to/theFilename.ext'); 

這將工作;-)

+0

感謝您的回覆,Content-Length文件的大小是多少......如果文件大於177998,該怎麼辦? – Jason

+0

將內容長度設置爲您的實際內容長度..說實話 - 我實際上刪除了內容長度,腳本工作得很好。 –

+2

不適用於safari – fdrv

0

好了,所以通過康沃與VIMEO,並找出該問題是由於內容處置:附件。他們告訴我這是一個繼承瀏覽器的問題。你不應該使用不同的DNS來加載資源,所以它可以工作,但瀏覽器不會爲此感到高興。