为了账号安全,请及时绑定邮箱和手机立即绑定

图片加载不出来

图片加载不出来

PHP
白板的微信 2021-12-03 19:26:27
我有一些代码来更改用户图像。但是更改后我必须按control+shift+R才能看到更改。我换File::delete()到unlink()。但它没有用。控制器代码:public function index(){    $id = Auth::id();    $info = Admin::select('name', 'login', 'image')-     >where('id', $id)->first();    return view('admin.index')->with('info', $info);}public function changes(Request $request){    $this->validate($request,[        'name'         => 'required',        'login'        => 'required',    ]);    $login = Auth::user()->login;    $admin =  Admin::where('login', $login)->first();    if($admin){        $admin->name = $request['name'];        $admin->login = $request['login'];        if(!is_null($request['old_password']) and !is_null($request['new_password'])){            $this->validate($request,[                'new_password'         => 'required',                'old_password'        => 'required',            ]);            if(Hash::check($request['old_password'], Auth::user()->password)){                $new_password = Hash::make($request['new_password']);                $admin->password = $new_password;            }        }        if(!is_null($request['profile_image'])){            $this->validate($request,[                'profile_image'         => 'image|mimes:jpeg,png,jpg',            ]);            if (!is_null(Auth::user()->image)) {                $admin_image = public_path() .'/'. Auth::user()->image;                if((File::exists($admin_image))){                    File::delete($admin_image);                }            }            $image = $request->file('profile_image');            $image_extension = $image->getClientOriginalExtension();            $image_name= Auth::id() .'.'. $image_extension;            $image->move(public_path('admin_assets/assets/images/users'), $image_name);            $admin->image = $image_name;        }        $admin->save();    }    return redirect()->route('admin.index');}我想我应该在索引操作中刷新公共文件夹,但是如何?
查看完整描述

1 回答

?
慕丝7291255

TA贡献1859条经验 获得超6个赞

如果新的图像具有相同的URL(在你的情况相同的名称和路径)中的旧图像浏览器使用的是在他自己的高速缓存中的旧形象。

除了要求用户按Ctrl+F5(或Ctrl+Shift+R)清除页面缓存外,此问题的最佳解决方案是:

  1. 更改名称每个用户改变图像本身的时间到图像。

  2. 版本化的查询字符串(类似于?v=2)附加到图像URL以强制浏览器请求新图像:URL它与缓存中的所有内容不同,因此它被迫获取新资源。


查看完整回答
反对 回复 2021-12-03
  • 1 回答
  • 0 关注
  • 186 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信