php接口增加白名单,使用laravel中间件来添加指定请求的白名单

这件事的需求是这样:

我们使用微信公众平台的开发模式搭建好了一个后台,这样就不得不把运营人员设置的关键词回复加进来。当然我们不希望每次运营人员想修改时,都让我们来直接改代码。于是我就为他们写了个关键词回复管理台。

我首先想到的是用auth写个登陆系统,但因为我之前将users这张表赋予了其他用途,就需要建个新表,将auth的基础配置改改(当然最后我没改成功)。于是我想不如直接将这个后台的访问设个白名单吧!

因此我访问了laravel的官方文档。大致步骤分为:

使用artisan make一个中间件。

php artisan make:middleware AgeMiddleware

在kernel.php注册这个中间件;

在routes.php为你的请求添加中间件,官网的示例用法是:

Route::get('admin/profile', ['middleware' => 'AgeMiddleware', function () {

//

}]);

编辑中间件代码。我的白名单代码很简单:

if ( in_array($request->getClientIp(), ['xx.xxx.xxx.xxx'])){

return $next($request); }

现在我遇到了一个坑是这样:

在routes.php里,我希望对如下请求添加中间件:

Route::resource('keyword', 'KeywordController');

官网示例代码里,没有写明resource下改如何添加中间件。

经过一番google,我在KeywordController里添加:

public function __construct()

{

$this->middleware('checkIP');

}

于是搞定。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值