我需要在Laravel 9中创建Cookie并检索其信息



我创建了cookie但无法检索

web.blade.php
use IlluminateSupportFacadesCookie;
Route::get('/cookie/', function () {
return Cookie::make('codigo', 1, 60);
//Result
//code_id=1; expires=Fri, 20-Jan-2023 14:40:56 GMT; Max-Age=3600; path=/; httponly; samesite=lax
}
Route::get('/retornar/', function () {
//1º recovery test
return Cookie::get('code_id');
//2º recovery test
if (Cookie::has('code_id')) {
$cookieValue = Cookie::get('code_id');
return response()->json($cookieValue);
}
return response()->json('Cookie not exists');
//3º recovery test
return dd( Cookie::get('codigo') );
//For all results, it is always null
//NULL
}

I already changed it here, and I don't have a result
appHttpMiddlewareEncryptCookies.php
protected $except = [
'code_id'
];

我用了这些例子:•https://phpforever.com/laravelexample/laravel-set-get-delete-cookies/: ~:文本= % 20 % 20可以使用% 20饼干% 3 a % 3,('名字' % 2 c % 20 'value")% 3 b•https://satellasoft.com/artigo/php/manipulando-cookies-no-laravel•https://laravel.com/api/9.x/Illuminate/Contracts/Cookie/QueueingFactory.html method_forever•https://onlinewebtutorblog.com/laravel-9-cookies-get-set-delete-cookie-example/

要创建一个cookie,您可以在cookie facade上使用make方法。第一个参数是cookie的名称,第二个参数是值。你也可以传递一个可选的第三个参数,它是cookie在过期前应该持续的分钟数。

Cookie::make('name', 'value', $minutes);

要将cookie发送到浏览器,您可以将其附加到响应对象。您可以使用响应对象上的withCookie方法来实现这一点。

return response('Hello World')->withCookie(Cookie::make('name', 'value', $minutes));

要检索cookie的值,可以使用cookie facade上的get方法。第一个参数是cookie的名称。

$value = Cookie::get('name');

您还可以通过使用cookie facade上的has方法来检查cookie是否存在。第一个参数是cookie的名称。

if (Cookie::has('name')) {
// do something
}

相关内容

  • 没有找到相关文章

最新更新