Android默认浏览器不从PC localhost下载.txt文件

时间:2013-01-02 08:03:27

标签: php android browser

我在Wamp Server上运行的PHP上编写了一个脚本,它强制下载.txt文件。该脚本如下所示:

header("Content-Type: application/octet-stream");

$newfile = "data.txt";
header("Content-Disposition: attachment; filename=" . urlencode($newfile));   
header("Content-Type: application/force-download");
header("Content-Type: application/octet-stream");
header("Content-Type: application/download");
header("Content-Description: File Transfer");            
header("Content-Length: " . filesize($newfile));
flush(); // this doesn't really matter.
$fp = fopen($newfile, "r");
while (!feof($fp))
{
    echo fread($fp, 65536);
    flush(); // this is essential for large downloads
} 
fclose($fp);

此代码运行良好。

但问题是,我已经将我的Android设备连接到PC,并且能够使用任何其他浏览器下载此文件,但不能使用Android默认Web浏览器。

有人知道默认浏览器下载失败的原因吗?但是可以从Android上的其他地方下载吗?

1 个答案:

答案 0 :(得分:0)

出于某种原因,Android浏览器对HTTP标头非常挑剔。

此页面将为您提供有关此事的一些见解:http://www.digiblog.de/2011/04/android-and-the-download-file-headers/

引用页面的一部分,如果您使用这行代码,它可能无效。

Content-Type: application/force-download

该页面还为您提供了一些可能的解决方案。