-1
我正在为移动应用程序编写其他API。我不知道如何在我的应用中授权用户和管理员。 我有一个名为“用户”表,有一个名为“isAdmin”这是或场。 现在当管理员发送帖子时,用户可以看到posts.how您是否推荐验证码这两个? 谢谢laravel rest api中的身份验证和用户管理
我正在为移动应用程序编写其他API。我不知道如何在我的应用中授权用户和管理员。 我有一个名为“用户”表,有一个名为“isAdmin”这是或场。 现在当管理员发送帖子时,用户可以看到posts.how您是否推荐验证码这两个? 谢谢laravel rest api中的身份验证和用户管理
我建议你阅读有关身份验证的laravel文档:https://laravel.com/docs/5.5/authentication
你必须设置什么是以下几点:
一个AdminMiddleware文件的实施例- 通过命令行创建:PHP人员化妆:中间件AdminMiddleware一个用户模型isAdmin功能的
<?php
namespace App\Http\Middleware;
use Closure;
use Auth;
class AdminMiddleware
{
/**
* Handle an incoming request.
*
* @param \Illuminate\Http\Request $request
* @param \Closure $next
* @return mixed
*/
public function handle($request, Closure $next)
{
if(Auth::check() && Auth::user()->isAdmin()){
return $next($request);
}
else{
return view('your_view')->withErrors('You are not logged in');
}
}
}
实施例 - 由创建命令行:php artisan make:model用户
012你的路由文件// @TODO: Set routes for user and admin here...
Route::group(['middleware' => ['admin']], function() {
// @TODO: Set admin routes here, only admin can use this routes.
});
您也可以编辑您的Kernel.php有点
例子:
protected $routeMiddleware = [
// ... add this line
'admin' => \App\Http\Middleware\AdminMiddleware::class,
];
非常感谢你much.how你建议吗?与isAdmin或两张桌子的一张桌子? –
@Steve我建议使用带有isAdmin列的用户表。如果稍后您决定要添加多种类型的用户,请将列设置为枚举并更改isAdmin函数以适应此要求。否则,您最终会为新类型的用户创建新表,因此不建议这样做。 –