💎一站式轻松地调用各大LLM模型接口,支持GPT4、智谱、豆包、星火、月之暗面及文生图、文生视频 广告
>[info] 路由分组 ~~~ Route::prefix('weapp')->namespace('Api\Weapp')->name('api.weapp.')->group(function () { // 登录相关路由 Route::middleware('throttle:' . config('api.rate_limits.sign')) ->group(function () { }); // 访问相关路由 Route::middleware('throttle:' . config('api.rate_limits.access')) ->group(function () { // 游客可以访问的接口 // 比如某个用户的详情 // Route::get('users/{user}', 'UsersController@show') // ->name('users.show'); // 登录后可以访问的接口 Route::middleware('auth:api')->group(function () { // 比如手机号授权 }); }); }); ~~~ 添加调用频率限制 新建`config/api.php`,代码如下: ~~~ return [ /* * 接口频率限制 */ 'rate_limits' => [ // 访问频率限制,次数/分钟 'access' => env('RATE_LIMITS', '60,1'), // 登录相关,次数/分钟 'sign' => env('SIGN_RATE_LIMITS', '60,1'), ], ]; ~~~ 除了登录相关的接口,其他接口我们放在 access 这个频率限制的分组中,也就是剩下要完成的接口,统一 1 分钟只能调 用 60 次。 ***** 这里我们设计了两个接口: 1. 某个用户的信息 2. 当前登录用户的信息 ***** 当前登录用户也就是请求通过sanctum(laravel8 扩展)验证 的用户,我们使用`auth:api`中间件验证用户的 sanctum 是否合法。这样就将接口继续分为了两类: * 游客可以访问的接口; * 登录用户才可以访问的接口。