我是苗条框架的新手,我正在尝试下载图像文件。使用php在本地工作正常。但是当在服务器上应用相同的代码时,它不起作用。搜索了很多但没有运气,here和this one。这是我的代码
$app->get('/image', function ($request, $response, $args) {
//header('Content-type: image/png');
//header('Content-Disposition: attachment; filename=go-logo.jpg');
//$contents = file_get_contents(getcwd() . '/' . $_GET['img']);
$filename=getcwd() . '/' . $_GET['img'];
header("Content-Length: " . filesize($filename));
header('Content-Type: application/octet-stream');
header('Content-Disposition: attachment; filename=go-logo.jpg');
readfile($filename);
return $contents;
});
错误是显示它是一个html文件。我想要这样
答案 0 :(得分:0)
您需要在响应对象上设置标头。 然后将文件写入Response body。
return $response->withHeader("Content-Type", "application/octet-stream")
->write($fileContents);