【问题标题】:How to attach cookies to JSON Response in symfony2?如何在 symfony2 中将 cookie 附加到 JSON 响应?
【发布时间】:2014-01-04 17:45:13
【问题描述】:

我有用于将产品添加到购物车的 JSON 端点。它检查购物车是否已经存在。如果没有,那么它会创建一个购物车,并且购物车 ID 存储在 cookie 中。那么我如何将 cookie 附加到 symfony2 的 JsonResponse 上?

在非 ajax 版本中,如果我从我的操作中渲染模板,我可以使用:

$response = new Response();
$response->headers->setCookie(new Cookie(‘cookie_name’, ‘cookie_value’));

$this->render('<template_path>', '<array_options>', $response);

请帮助我了解如何为 JsonResponse 执行此操作。

【问题讨论】:

    标签: php symfony cookies


    【解决方案1】:

    在我看来,您会在以下链接中找到答案:

    How can i send json response in symfony2 controller

    http://api.symfony.com/2.2/Symfony/Component/HttpFoundation/JsonResponse.html

    http://symfony.com/doc/current/components/http_foundation/introduction.html

    最好的方法,查看链接和学习,但如果你找不到答案,也许这会很好:

    use Symfony\Component\HttpFoundation\Response;
    
    $response = new Response();
    $response->headers->set('Content-Type', 'application/json');
    $response->headers->setCookie(new Cookie(‘cookie_name’, ‘cookie_value’));
    
    return $response;
    

    还有一个有用的 JsonResponse 类,它可以让这更容易:

    use Symfony\Component\HttpFoundation\JsonResponse;
    
    $response = new JsonResponse();
    $response->headers->setCookie(new Cookie(‘cookie_name’, ‘cookie_value’));
    
    return $response;
    

    我希望这会有所帮助:)

    【讨论】:

      猜你喜欢
      • 2021-12-07
      • 2011-12-16
      • 2019-07-26
      • 1970-01-01
      • 2019-04-30
      • 2018-02-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多