我正在为我的项目使用Slim API。我想提供下载文件(主要是PDF文件)。我找到了几种方式发送文件的公共链接,我不想要。我还发现了Slim版本2.4的中间件,但我使用的是3.x.
我只想访问路线,例如/下载/版/ 2183 并且应该启动具有此特定文件ID的Downlod。我在一个可用的变量中有一个服务器上文件的路径。
背后的基本理念是不同的限制,用户可以下载文件 - 但我可以自己做 - 我遇到的问题是,如何通过路径下载到客户端浏览器
有谁知道如何实现这个目标?
干杯, 尼古拉斯
答案 0 :(得分:1)
这实际上很容易。
$app->get('/my/file', function ($req, $res, $args) {
return $res->withHeader('Content-Type', 'application/octet-stream')
->withHeader('Content-Disposition', 'attachment')
->write(file_get_contents("file.txt"));
});