在android上下载文件失败

时间:2015-07-09 19:04:40

标签: php android html mysqli

我创建了一个网站,您可以在samuelt1.me看到它。关键是您可以上传文件,然后使用URL从其他来源下载文件。问题是它无法下载到android。到目前为止,IOS工作正常。

我像这样使用ADB

adb logcat DownloadManager:I *:S

我遇到了这个问题:

I/DownloadManager( 9250): Initiating request for download id = 2011 with
 mAllowedNetworkTypes = -1 forP2Pbit = 8194 W/DownloadManager( 9250):
 Aborting request for download 2011: http error 403,
 mContinuingDownload: false FinalStatus = 403

我认为它与我的服务器有关,但我的服务器与其他所有设备都可以正常工作。所以我不确定为什么它会破碎。另一个症状是它通常在第一次尝试时起作用,但在第二次或第三次下载时它将失败。这是完整的下载代码

include 'db.php';
include 'lib.php';

$id = preg_replace("/[^A-Za-z0-9 ()' -]/", '', optional_param('i', ''));

$query = "SELECT name, type, size, content " .
        "FROM upload WHERE callId = '$id'";

$result = mysqli_query($mysqli, $query) or die('Error, query failed');
list($name, $type, $size, $content) = mysqli_fetch_array($result);

header("Content-length: $size");
header("Content-type: $type");
header("Content-Disposition: attachment; filename=$name");
header('Content-Transfer-Encoding: binary');
header('Accept-Ranges: bytes');
echo $content;

preg替换只是清理输入。

我几乎尝试了各种标题组合,所以我不认为这是问题所在。

0 个答案:

没有答案
相关问题