合规国际互联网加速 OSASE为企业客户提供高速稳定SD-WAN国际加速解决方案。 广告
如果你想要自定义可以在很多路由和控制器重复使用的响应,你可以使用 Illuminate\Contracts\Routing\ResponseFactory 实做的方法 macro。 举个例子,来自服务提供者的 boot 方法: ~~~ <?php namespace App\Providers; use Response; use Illuminate\Support\ServiceProvider; class ResponseMacroServiceProvider extends ServiceProvider { /** * Perform post-registration booting of services. * * @return void */ public function boot() { Response::macro('caps', function($value) use ($response) { return $response->make(strtoupper($value)); }); } } ~~~ macro 函数第一个参数为宏名称,第二个参数为闭包函数。闭包函数会在 ResponseFactory的实做或者辅助方法 response 调用宏名称的时候被执行: `return response()->caps('foo');`