在流明5.6中设置响应cookie

问题描述 投票:0回答:1

其实我想设置这样的标题

response()->json($data)->header('Set-Cookie','strCookie1',false)->header('Set-Cookie','strCookie2',false)->send();

但是Set-Cookie没有在标题中显示。有没有办法在Lumen 5.6中设置cookie

我看到withCookie(cookie())但不知道如何使用。流明的cookie()没有定义。

注意:我需要同时使用2个set-cookie,而strCookie1已经是cookie值的完整长字符串。 (像这样:TOKEN=abcxyz; Path=/; Expires=Sun, 24 Mar 2019 03:40:11 GMT; Max

谢谢。

lumen
1个回答
1
投票

根据文件here

但是,对于大多数路由和控制器操作,您将返回完整的Illuminate\Http\Response实例。返回完整的Response实例允许您自定义响应的HTTP状态代码和标头。 Response实例继承自Symfony\Component\HttpFoundation\Response类,提供了各种构建HTTP响应的方法:

您可以找到设置cookie here的适当方法。参数是字符串或Symfony\Component\HttpFoundation\Cookie实例。如果你看到里面的代码(here's the link),string参数只有在定义cookie函数时才会被接受。在这种情况下,它没有定义。所以这个方法只留下一个选项:

使用Symfony\Component\HttpFoundation\Cookie实例提供第一个参数

<?php

use Symfony\Component\HttpFoundation\Cookie;

$response
    ->withCookie(
        new Cookie($name, $value, $expire)
    );
© www.soinside.com 2019 - 2024. All rights reserved.