我们同时上传的还有昵称,图片是保存在resource表里面,,
对应在userProfile有关联id;利用laravel自带上传很方便,,
但是不能直接访问,,所以需要建立软链接:
PHP artisan storage:link
执行该条命令会在public里面生成存储图片的文件夹,就可以通过地址访问了
public function uploadAvatar(Request $request)
{
$validator = Validator::make($request->all(), [
'nickname' => 'required|string|max:8',
'avatar' => 'required',
]);
if ($validator->fails()) {
return $this->responseForJson(ERR_ACCESS_DENID, $validator->errors());
}
$user_id=Auth::id();
$avatar = $request->file('avatar')->store('/public/'.date('Y-m-d').'/avatars');
$avatar = Storage::url($avatar);
$resource=Resource::insertGetId(['type'=>1,'resource'=>$avatar]);
$Data=['user_id'=>$user_id,'avatar'=>$resource,'nickname'=>$request->nickname];
try {
$edit = UserProfile::where('user_id',$user_id)->update($Data);
if ($edit) {
return $this->responseForJson(ERR_OK, 'upload success');
}
return $this->responseForJson(ERR_CREATE, 'upload fail');
}catch (\Exception $exception) {
return $this->responseForJson(ERR_ACCESS_DENID, $exception->getMessage());
}
}
以上这篇laravel实现一个上传图片的接口,并建立软链接,访问图片的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持华域联盟。
您可能感兴趣的文章:
- 记Laravel调用Gin接口调用formData上传文件的实现方法
- laravel 错误处理,接口错误返回json代码
- 在Laravel中使用GuzzleHttp调用第三方服务的API接口代码
- Laravel5.4简单实现app接口Api Token认证方法
- Laravel框架实现修改登录和注册接口数据返回格式的方法
- Laravel统一封装接口返回状态实例讲解
声明:本站(华域联盟www.cnhackhy.com)所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

评论(0)