我想在Laravel 9中使用api修改密码--我使用postman,但我遇到了一个无法解决的问题--我尝试了不止一种方法,得到了相同的错误
这是路线:
Route::get('changePassword', [AuthController::class, 'ChangePassword']);这是一种模式:

这是控制器:
public function ChangePassword(Request $request)
{
$validator=Validator::make($request->all(),[
'old_password' =>'required',
'new_password' =>'required|min:8|max:30',
'confirm_password' =>'required|same:new_password'
]);
if ($validator->fails()) {
return response()->json([
'message'=>'validations fails',
'errors' =>$validator->errors()
],422);
}
$user=$request->user();
if (Hash::check($request->old_password,$user->password)) {
$user->update([
'password'=>Hash::make($request->password)
]);
return response()->json([
'message'=>' password successfully updated',
'errors' =>$validator->errors()
],200);
}
else
{
return response()->json([
'message'=>'old password does not match',
'errors' =>$validator->errors()
],422);
}
}我在邮递员身上遇到的错误是:

有什么问题吗?
发布于 2022-11-04 20:25:15
试试看,你忘了new_password
public function ChangePassword(Request $request)
{
$validator=Validator::make($request->all(),[
'old_password' =>'required',
'new_password' =>'required|min:8|max:30',
'confirm_password' =>'required|same:new_password'
]);
if ($validator->fails()) {
return response()->json([
'message'=>'validations fails',
'errors' =>$validator->errors()
],422);
}
$user=$request->user();
if (Hash::check($request->old_password,$user->password)) {
$user->update([
'password'=>Hash::make($request->new_password)
]);
return response()->json([
'message'=>' password successfully updated',
'errors' =>$validator->errors()
],200);
}
else
{
return response()->json([
'message'=>'old password does not match',
'errors' =>$validator->errors()
],422);
}
}https://stackoverflow.com/questions/74320220
复制相似问题