Content-Type:image/jpeg 不在本地工作
Content-Type: image/jpeg not working on live working on local
我对 slim 框架还很陌生,我正在尝试下载图像文件。使用 php 在本地工作正常。但是当在服务器上为 slim 应用相同的代码时,它不起作用。搜索了很多但没有运气,即 here and 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 文件。我想要这样
您需要在响应 object 上设置 headers。
然后将文件写入Response body.
return $response->withHeader("Content-Type", "application/octet-stream")
->write($fileContents);
我对 slim 框架还很陌生,我正在尝试下载图像文件。使用 php 在本地工作正常。但是当在服务器上为 slim 应用相同的代码时,它不起作用。搜索了很多但没有运气,即 here and 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 文件。我想要这样
您需要在响应 object 上设置 headers。 然后将文件写入Response body.
return $response->withHeader("Content-Type", "application/octet-stream")
->write($fileContents);