Laravel 5.3文件响应错误

时间:2017-01-12 05:04:37

标签: laravel-5

我正在尝试使用像这样的文件响应从S3存储桶在浏览器中打开PDF文档...

public function showReport(Document $document)
{
    return response()->file("https://s3-us-west-2.amazonaws.com/" . $document->path . '/' . $document->file_name . '.' . $document->ext);
}

但是我收到了这个错误...

  

不存在   /var/www/ssiweb/vendor/symfony/http-foundation/File/File.php:37

但是如果我把它放到浏览器中,我就可以访问该文档。文件方法不接受网址吗?

1 个答案:

答案 0 :(得分:0)

尝试下面的代码,不确定,但这可能对您有用。

public function showReport(Document $document)
{
  $file_path = "https://s3-us-west-2.amazonaws.com/" . $document->path . '/' . $document->file_name . '.' . $document->ext;
    if (File::isFile($file_path))
    {
        $file = File::get($file_path);
        $response = Response::make($file, 200);
        $response->header('Content-Type', 'application/pdf');

        return $response;
    }
    //Not a file....
}