Laravel 呼叫其他路由 獲取返回資料擴充套件

lyxxxh發表於2019-08-11

安裝

composer require lyxxxh/larapi

註冊\Xxh\LarApi\LarApiMiddleWare中介軟體

    /*App\Http\Kernel.php*/
    protected $middlewareGroups = [
            'web' => [
                ..............,
                \Xxh\LarApi\LarApiMiddleWare::class
            ]

使用

例如寫好了輪播圖介面

Route::get('article/{id}', function ($id) {
        return '你訪問id='.$id.'的文章';
});
Route::get('banner',function(){
    return ['banner/1.png','banner/2.png','banner/3.png'];
});

在blade模板裡
{{ $api->get('article/4') }}

@foreach($api->getc('banner') as $img)
    <img src="{{ $img }}">      
@endforeach

get()與getc()區別

   getc() 有快取則返回快取,沒有則呼叫get() 快取資料再返回。
   get()  呼叫路由返回資料 

自定義

新建中介軟體並註冊。LarApiService是traits


    use \Xxh\LarApi\LarApiService;
    public function handle($request, Closure $next)
    {
        view()->share('api',$this);
        return $next($request);
    }

    public function get()
    {
        dd("重寫get方法");
    }

    public function gete()
    { 
        dd("擴充套件一個方法");
    }

作用

由於是api,可以與其他的平臺通用資料。

適用於小規模網站前後分離;
如果採用單頁,seo將會是個麻煩的問題;

只有get請求

需要提交表單,使用form表單 或者 ajax方式提交吧。

本作品採用《CC 協議》,轉載必須註明作者和本文連結
專心學習不瞎搞

相關文章