我的代码中有一个路由调用,以显示一个文件夹中的图像,该文件夹中有几个基于类别的子文件夹。这是我在数据表中的路由调用,以显示图像:
<img id="pic" src="{{url('api/image',['folder/subfolder1',$data->image]}}" style="width:150;height:150"/>
我遇到错误,导致'folder / subfolder1'上的'/'变为'%2f',如何防止这种情况发生? 我希望api返回的链接看起来像这样:
<img id="pic" src="localhost:8000/api/image/folder/subfolder1/image.jpg/>
相反,我得到了:
<img id="pic" src="localhost:8000/api/image/folder%2fsubfolder1/image.jpg/>
getImage控制器看起来像这样:
public function getImage($foldername,$filename){
$path = ['UPLOAD_PATH'].'/image';
return Image::make($path.'/'.$foldername'/'.$filename)->response();
}
这是路线api:
Route::get('image/{foldername}/{filename}','getImageController@getImage')
答案 0 :(得分:2)
如果您希望在下面获得此结果
<img id="pic" src="localhost:8000/api/image/folder/subfolder1/image.jpg" />
然后您可以在下面尝试此操作。
<img id="pic" src="{{url('api/image/folder/subfolder1/' . $data->image }}" style="width:150;height:150"/>
让我知道是否有帮助。
答案 1 :(得分:1)
您无需逃避自己的内部路线。使用刀片的非转义{! !!}}代替:
<img id="pic" src="{!! url('api/image',['folder/subfolder1',$data->image] !!}" ... />
我也许还会使路由更简单-为什么不只使用api/image/folder/subfolder1/'.$data->image
或类似的字词?
答案 2 :(得分:1)
发送到请求的url时,您可以使用route代替url。
尝试使用此代码:
<img id="pic" src="{{route('public/image/')}$data->image}}">