在前端用 js 设置的 cookie,在后台用 Laravel 始终获取不到,取到的值为空。
例如
$value = $request->cookie('dingding_id');
问题的原因
Laravel 默认认为 cookie 是被加密过的,例如,在后台设置的 cookie,会被自动加密。
而前端 js 新增的 cookie 是没有加密的,所以 laravel 认为是个无效的 cookie。
解决方法
修改 app/Http/Middlewares/EncryptCookies.php
protected $except = [
'dingding_id',
];