从存储返回图像响应以及其他数据?

时间:2019-05-22 14:14:37

标签: laravel

在控制器中,我返回一个包含数据的视图。除了这些数据,我还如何发回图像?

由于图像是私有的,因此需要通过Storage加载,我得到了图像并在类中建立了图像响应。

我还如何在数据旁边返回此图像响应?

我尝试将响应设置为数据中的var并在img src中显示,但无法加载图像。

1 个答案:

答案 0 :(得分:0)

通常我使用url。 Storage::url('file.ext')为您提供了很多可能性。还有一种方法可以在Storage Facade $url = Storage::temporaryUrl('file.jpg', now()->addMinutes(5));中使用此方法创建临时URL,您必须指出该URL何时应过期。

我还有另一种使用绘图板的方法。 首先,您必须获取图像的内容。我不记得了,但是我认为存储的get()方法可以完成这项工作。也许有点复杂。

无论如何,您都必须获取图像的原始数据,将其放入变量中并将其发送到视图。

然后,在图像的src中,执行以下操作:

 <img src="data:image/png;base64, {{$varToRawData}}" />

请确保使用正确的图片/扩展名