Laravel中throttle中间件失效如何解决-创新互联

本篇文章为大家展示了Laravel中throttle中间件失效如何解决,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。

让客户满意是我们工作的目标,不断超越客户的期望值来自于我们对这个行业的热爱。我们立志把好的技术通过有效、简单的方式提供给客户,将通过不懈努力成为客户在信息化领域值得信任、有价值的长期合作伙伴,公司提供的服务项目有:主机域名虚拟主机、营销软件、网站建设、青川网站维护、网站推广。

具体如下:

按官方解释,实现访问频率限制非常简单:

Route::get('test', function(){
  return 'helle world' ;
})->middleware('throttle');

也确实如此,cache存储访问次数,做出判断。

之前使用了zizaco/entrust(一个基于角色的权限管理包),其中把 .env 中的CACHE_DRIVER=file 改为了 CACHE_DRIVER=array。所以问题出现了。Laravel支持多种cache驱动,File, Array, Db, Redis等,但是throttle 好像使用File类型的驱动才有效。

我的修改如下:

vendor/illuminate/cache/RateLimiter.php 文件

public function __construct(Cache $cache)
{
    $this->cache = $cache;
}
public function __construct()
{
    $this->cache = app('cache')->driver('file');
}

上述内容就是Laravel中throttle中间件失效如何解决,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注创新互联行业资讯频道。


分享题目:Laravel中throttle中间件失效如何解决-创新互联
标题URL:http://pwwzsj.com/article/ddesid.html