我正在尝试在 Post Model 中制定政策,我遵循文档但仍然在 api.php 中始终返回 false
Route::put('post/{id}','PostController@update')->middleware('auth:api');
在后控制器
public function update(Request $request, Post $post,$id){
$this->authorize('update',$post);
$request->validate(['content'=>'required']);
$post = $post->find($id);
$post->content = $request->content;
$post->save();
return response()->json($post, 200);
}
在后政策
public function update(User $user, Post $post)
{
return $user->id === $post->user_id;
}
在 AuthServiceProvider 中
protected $policies = [
'App\Post' => 'App\Policies\PostPolicy',
];
请忽略模型,因为模型工作正常,如果我在控制器中评论 $this->authorize 工作正常,但没有身份验证,用户可以更新模型中的任何内容
我使用 api 使用邮递员进行测试
authorization = Bearer 'api_token'
明月笑刀无情