ハマログ

株式会社イーツー・インフォの社員ブログ

Laravel5でCookieを操作する

Laravel5でCookieを操作してみます。

ウェブアプリケーションではリクエストとレスポンスの動作がセットになり、レスポンス返却時にブラウザがCookieの保存操作をおこないます。
ということで、基本的にはResponseクラスのオブジェクトとセットで設定します。

public function getVote(Request $request, $facilityId)
{
    $showHistories = // なにか。
    $response = new Response(view('vote.index'));
    $response->withCookie(cookie('showHistories', $showHistories, 60*24*30));
    return $response;
}

取得も簡単です。

$showHistories = Request::cookie('showHistories');

基本はこれでOKなのですが、ServiceやProvider内でCookieをセットしたいケースがあり、この場合Responseとセットにできない状況が発生します。
そういう場合、Cookieファサードを利用してキューに追加することで、次回Responseを返すタイミングでCookieを設定することができます。

class HistoryService
{
    public function sync()
    {
        // (略)
        Cookie::queue(cookie('showHistories', $showHistories, 60*24*30));
    }
}

以上

CookieLaravelLaravel5RequestResponseクッキー

kaneko tomo   kaneko tomo   2016年5月5日


関連記事

Let’s EncryptのCertbotを アップデートする(ACMEv1の無効化対応)

Let’s Encryptからメールがきました。ACMEv1というプ…

Laravelのキューイングを実装する

はじめに Laravel5で、とあるサービスの並行して走る複数のジョブをComm…

コンピュータと言語

どうも。 台風接近中の奄美から元井です。   この島、 “自然と人が共…


← 前の投稿

次の投稿 →