我有强制文件下载的标题,而不是在浏览器中查看,但我需要提供该选项。我已经看过Stack Overflow上的几个回答这个问题的帖子(例如CodePen),但我仍然没有得到理想的结果,所以我想检查一下我是否遗漏了什么。
以下是我强制下载的标题
$file = 'file.pdf';
$filePath = 'path/to/file.pdf';
header("Cache-Control: public");
header("Content-Length: 20000");
header("Content-Description: File Transfer");
header("Content-Type:file");
header('Content-Disposition: attachment; filename="$file"');
header("Content-Transfer-Encoding: binary");
readfile($filePath);
以下是尝试在浏览器中显示文件的标题
header("Cache-Control: public");
header("Content-Length: 20000");
header("Content-Description: File Transfer");
header("Content-Type:file");
header('Content-Disposition:inline; filename="$file"');
header("Content-Transfer-Encoding: binary");
readfile($filePath);
所以唯一的变化是内容处置标题。
但是,我仍然只是在浏览器中显示标记(见图)。
How to force files to open in browser instead of download (pdf)?
有什么想法吗?
非常感谢