2016-03-21 9 views
8

私はLaravel 5.1プロジェクトで、htmlブロックを返す多くのajax呼び出しを使用しています。Laravel 5.1オブジェクト指向のAjaxレスポンスキャッシュ

ウェブサイトの速度を最適化するために、プライベートおよびパブリックの応答キャッシュを実装したいと考えています。

 return response() 
     ->json($result) 
     ->header('Cache-Control', 'public, max-age=300'); 

この方法では、この方法では300秒以内に更新されるアカウントオブジェクトは保持されません。

返されたオブジェクトが更新されている場合にのみ、リクエストのレスポンスキャッシュをクリアできるかどうかを確認します。

+0

更新されたことを知るには、実際のリクエストを送信する必要があります。 –

+0

Yupを使用しないようにキャッシュに指示する値が更新されたときに何らかのトリガーを作成しない限り、更新された状態のmd5ハッシュを持つEタグを使用できます。 まだ私は最後の手段としてこれを保ち、しばらくの間エレガントな方法で検索したいと考えています。 – Frederiek

答えて

0

多分、あなたは以下のようなものでサーバー側のキャッシュを試すことができます。申し訳ありませんが、これは

function sometest(User $user) 
{ 

    /** . . .conditions to check if some data has changed . . . **/ 


    $jsonResponse = Cache::remember(Auth::id() . "_sometest", 300, function() use ($user) 
    { 
     $result = $user->all(); //get result here 

     return $result; 
    }); 

    return response()->json($jsonResponse); 
} 

あなたが読むことができる程度ここCache

あなたも試すことができ、粗である

関連する問題