laravel_session值为什么不一样

返回的laravel_session值为什么不一样

位置:vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php
代码调试:

    /**
     * Add the session cookie to the application response.
     *
     * @param  \Symfony\Component\HttpFoundation\Response  $response
     * @param  \Illuminate\Contracts\Session\Session  $session
     * @return void
     */
    protected function addCookieToResponse(Response $response, Session $session)
    {
        if ($this->sessionIsPersistent($config = $this->manager->getSessionConfig())) {
            var_dump($session->getName(),$session->getId());//这个位置打印响应的cookie值
            $response->headers->setCookie(new Cookie(
                $session->getName(), $session->getId(), $this->getCookieExpirationDate(),
                $config['path'], $config['domain'], $config['secure'] ?? false,
                $config['http_only'] ?? true, false, $config['same_site'] ?? null
            ));
        }
    }

前台:

laravel_session值为什么不一样

是我打印的位置不对吗

《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
最佳答案

StartSession 中打印的是解密后的 cookie。
$session->getId()即 sessionid,也是存储目录下对应的 session 文件名,如果不加密相当于暴露了。

file

解密和加密都在 web 中间件中的第一个中间件,第一个经过它解密 $request,也是最后经过它加密 $response 中的 cookies 返回。

file

Laravel

2年前 评论
讨论数量: 1

StartSession 中打印的是解密后的 cookie。
$session->getId()即 sessionid,也是存储目录下对应的 session 文件名,如果不加密相当于暴露了。

file

解密和加密都在 web 中间件中的第一个中间件,第一个经过它解密 $request,也是最后经过它加密 $response 中的 cookies 返回。

file

Laravel

2年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!