各位大大好︰
小弟想把档案传给手机应用, 但不想把档案地址发给他, 于是做了一些麻烦的事情.......
public function downloadFileByFileToken_post() {
$fileToken = $this->input->post('FileToken');
$this->load->model('system_model');
$filePath = $this->system_model->getFilePathByFileToken($fileToken);
if (file_exists($filePath)) {
$path_parts = pathinfo($filePath);
$this->load->model('system_model');
$newFileName = $this->system_model->generateRandomString(16);
header('Content-Description: File Transfer');
header('Content-Type: application/octet-stream');
header('Content-Disposition: attachment; filename='.$newFileName.'.'.$path_parts['extension']);
header('Expires: 0');
header('Cache-Control: must-revalidate');
header('Pragma: public');
header('Content-Length: '.filesize($filePath));
readfile($filePath);
exit;
} else {
echo 'ERROR';
}
}
我用的是codeigniter, 回传到ie是一个档案的下载, 但是帮我做android的朋友说他没法
接, 是他该改还是我改呢? 我有方法header可以直传档案麻?? 还是我的思路都错了?