Laravel throttle 如何基于路由限流?

在社区搜索问题,发现了同一个问题问答:Laravel throttle 如何基于路由限流?,但是我就是不成功,每次访问路由一次就触发限制,本人用的是Laravel8,大佬求帮助

《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
讨论数量: 2

调整App\Providers\RouteServiceProvider@configureRateLimiting,默认是根据IP或者是用户ID限流的,你可以加上路由参数

参考Illuminate\Routing\Middleware\ThrottleRequests@resolveRequestSignature

    /**
     * Resolve request signature.
     *
     * @param  \Illuminate\Http\Request  $request
     * @return string
     *
     * @throws \RuntimeException
     */
    protected function resolveRequestSignature($request)
    {
        if ($user = $request->user()) {
            return sha1($user->getAuthIdentifier());
        } elseif ($route = $request->route()) {
            return sha1($route->getDomain().'|'.$request->ip());
        }

        throw new RuntimeException('Unable to generate the request signature. Route unavailable.');
    }
2年前 评论
luyang (楼主) 2年前

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!