更新 laravel API 中的移动应用配置文件
update profile in laravel API for mobile apps
我想为移动应用构建一个 api。现在,我想创建一个编辑配置文件 api。但我不知道如何存储图像,如果用户想上传他们的头像。
这是我的代码:
public function profileedit($id, Request $request){
$users = user::find($id);
$users->name = $request->firstName;
$users->thumbnail = $request->avatar;
$users->save();
$data[] = [
'id'=>$users->uid,
'name'=>$users->name,
'avatar'=>$users->thumbnail,
'status'=>200,
];
return response()->json($data);
}
如何将$request->头像放入我的项目存储中,并以url形式显示(我的项目已经上传到服务器)
在 Laravel 中存储文件的最简单方法是这样。
use Illuminate\Support\Facades\Storage;
public function profileedit($id, Request $request){
//validator place
$users = user::find($id);
$users->name = $request->firstName;
$users->thumbnail = $request->avatar->store('avatars','public');
$users->save();
$data[] = [
'id'=>$users->uid,
'name'=>$users->name,
'avatar'=>Storage::url($users->thumbnail),
'status'=>200,
];
return response()->json($data);
}
但您可能知道,您应该使用 运行 php artisan storage:link
命令在 public 目录中生成存储快捷方式。
出于安全原因,您可以使用验证程序只让图像文件存储。在此示例中,我将文件限制为最大 4MB 大小的所有图像类型
$request->validate([
'avatar' => 'required|image|max:4096',
]);
有关更多信息,这些是文档链接。
我想为移动应用构建一个 api。现在,我想创建一个编辑配置文件 api。但我不知道如何存储图像,如果用户想上传他们的头像。 这是我的代码:
public function profileedit($id, Request $request){
$users = user::find($id);
$users->name = $request->firstName;
$users->thumbnail = $request->avatar;
$users->save();
$data[] = [
'id'=>$users->uid,
'name'=>$users->name,
'avatar'=>$users->thumbnail,
'status'=>200,
];
return response()->json($data);
}
如何将$request->头像放入我的项目存储中,并以url形式显示(我的项目已经上传到服务器)
在 Laravel 中存储文件的最简单方法是这样。
use Illuminate\Support\Facades\Storage;
public function profileedit($id, Request $request){
//validator place
$users = user::find($id);
$users->name = $request->firstName;
$users->thumbnail = $request->avatar->store('avatars','public');
$users->save();
$data[] = [
'id'=>$users->uid,
'name'=>$users->name,
'avatar'=>Storage::url($users->thumbnail),
'status'=>200,
];
return response()->json($data);
}
但您可能知道,您应该使用 运行 php artisan storage:link
命令在 public 目录中生成存储快捷方式。
出于安全原因,您可以使用验证程序只让图像文件存储。在此示例中,我将文件限制为最大 4MB 大小的所有图像类型
$request->validate([
'avatar' => 'required|image|max:4096',
]);
有关更多信息,这些是文档链接。