我們同時(shí)上傳的還有昵稱,圖片是保存在resource表里面,,
對(duì)應(yīng)在userProfile有關(guān)聯(lián)id;利用laravel自帶上傳很方便,,
但是不能直接訪問(wèn),,所以需要建立軟鏈接:
執(zhí)行該條命令會(huì)在public里面生成存儲(chǔ)圖片的文件夾,就可以通過(guò)地址訪問(wèn)了
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實(shí)現(xiàn)一個(gè)上傳圖片的接口,并建立軟鏈接,訪問(wèn)圖片的方法就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
您可能感興趣的文章:- 記Laravel調(diào)用Gin接口調(diào)用formData上傳文件的實(shí)現(xiàn)方法
- laravel 錯(cuò)誤處理,接口錯(cuò)誤返回json代碼
- 在Laravel中使用GuzzleHttp調(diào)用第三方服務(wù)的API接口代碼
- Laravel5.4簡(jiǎn)單實(shí)現(xiàn)app接口Api Token認(rèn)證方法
- Laravel框架實(shí)現(xiàn)修改登錄和注冊(cè)接口數(shù)據(jù)返回格式的方法
- Laravel統(tǒng)一封裝接口返回狀態(tài)實(shí)例講解