本文由 简悦 SimpRead 转码, 原文地址 juejin.cn
「这是我参与 11 月更文挑战的第 13 天,活动详情查看:2021 最后一次更文挑战」
背景
- 项目用 Thinkphp5.1 开发完成,对于各种关系模型的查询 Tp 处理起来还是比较吃力的。
- 作为努力奔跑的程序员,下一个项目我们决定用 Lavarel 进行开发。
- 因为掘金粑粑有奖励,所以把部分 gitee 上的私有的部分学习笔记整理一下。
说明
Laravel 属于中大型框架,各种功能都被内置了,而且 Laravel 官方的文档看的我是云里雾里的,对于新手感觉不是很友好。所以此系列文章只适合有 PHP 基础。想快速入门搞开发的。
开始之前
上一章节中,我们完成了后台获取博客数据列表,审核通过博客的接口。但是没有对这两个接口设置权限,这会导致任何人都能修改我们的数据。这肯定是不行的。我们只能让管理人员登录完成以后才能进行相关操作。
分析
在前端的发布博客接口中,我门是使用了中间件,定义那一个接口需要登录权限。 但是对于管理后台来说, 除了登录操作。其余所有操作都应该是有权限控制的。那样我们就得在每一个文件中都定义中间件么?
其实我们只需要提取出父类,定义好规则。其余子类中直接进行使用就行。还是编程中的继承的思想。
开始
- 创建管理后台基类
<?php
namespace App\Http\Controllers\Admin;
use App\Http\Controllers\Controller;
use Illuminate\Http\Request;
class BaseController extends Controller
{
public function __construct()
{
$this->middleware('auth:admin',['except'=>['login']]);
}
}
复制代码
- 博客类中继承当前基类
这样,所有的操作都需要密钥了。没有密钥的非法请求就会被拦截掉。