laravel只允许访问自己的资源

时间:2017-11-03 11:21:38

标签: php laravel rest

我想确保用户只能访问自己的数据。 我可以使用只返回经过身份验证的用户的路径来执行此操作:

Route::get('/user', function() { return auth()->user(); });

然而,我被告知这不是RESTful,因为它会返回不同的东西,具体取决于登录的人。而应该是:

Route::get('/users/{id}', 'UserController@index');

然后我需要在UserController中检查传递的id实际上是经过身份验证的用户ID。这似乎是一种容易搞乱和暴露数据的方法。

哪种方法更可取?

1 个答案:

答案 0 :(得分:0)

每当您提交与用户相关的数据时,您应该通过Auth::user()->data我会这样做