2017-01-23 55 views
0

想询问是否有人试图从Laravel控制器显示图像。以下是我对Laravel控制器的代码。所以基本上我只想隐藏图像的实际URL并添加额外的验证,因此我决定将该图像称为laravel URL。调用该laravel控制器 从laravel控制器显示图像

<img src="/image/1"> 

路线

Route::get('/image/{image_id}', ['as' => 'site.viewImage', 'uses' => '[email protected]']); 

控制器

public function viewImage($image_id) 
{ 
    return Storage::get($image_id . '.png'); 
} 

但这返回错误未找到

刀片代码。我在这里做错了什么? 注:我把它传递给控制器​​,因为我需要做更多的valdiation和混淆文件

我想这个代码和它的工作,但我想的办法一个laravel类型的实际URL

header("Content-type: image/png"); 
echo Storage::get($image_id .'.png');exit; 

我也尝试过这种方法

$response = response()->make(Storage::get($image_id . '.png'), 200); 
$response->header("Content-Type", 'image/png'); 
return $response; 

的laravel方法抛出一个404错误。

+0

是你能当你调用的URL打控制器?就像在控制器下尝试dd('测试'),看看你是否可以查看测试 –

+0

@SaravananSampathkumar是的,我能够击中它。但是,如果我复制图像的URL让我们说http:// mysite/image/1然后它会引发404错误 –

+0

奇怪的是,如果您在复制URL并粘贴它单独的选项卡时遇到404错误,那么您何时能够命中控制器? –

回答