• 为lumen添加session支持


    为lumen添加session支持,同时配置全局函数csrf_token可用

     首先laravel和lumen框架的版本要一致,我这里版本都是5.4

    1.复制laravel框架config目录下的session.php到lumen框架config目录下

    2.修改bootstrap目录下的app.php

    添加

    //加载配置

    $app->configure('session');

     //注册中间件

    $app->middleware([
        IlluminateSessionMiddlewareStartSession::class,
        AppHttpMiddlewareVerifyCsrfToken::class,
    ]);

     //注册服务提供者

    $app->register(IlluminateSessionSessionServiceProvider::class);

     //添加全局函数csrf_token

    3.修改vendorlaravellumen-frameworksrchelpers.php


    添加(该函数从拷贝自laravel框架下vendorlaravelframeworksrcIlluminateFoundationhelpers.php)
    if (! function_exists('csrf_token')) {
    /**
    * Get the CSRF token value.
    *
    * @return string
    *
    * @throws RuntimeException
    */
    function csrf_token()
    {
        $session = app('session');

        if (isset($session)) {
            return $session->token();
        }

            throw new RuntimeException('Application session store not set.');
        }
    }

    4.添加文件appHttpMiddlewareVerifyCsrfToken.php拷贝自laravel
    appHttpMiddlewareVerifyCsrfToken.php

    5.添加文件vendorilluminatehttpMiddlewareVerifyCsrfToken.php拷贝自
    laravel框架vendorlaravelframeworksrcIlluminateFoundationHttpMiddlewareVerifyCsrfToken.php
    该文件拷贝过去后需要修改命名空间,因为lumen下命名空间变化了


    6.修改vendorlaravellumen-frameworksrcApplication.php
    在方法
    registerContainerAliases中添加
    'IlluminateSessionSessionManager'=>'session',别名

  • 相关阅读:
    pat 乙级1084 外观数列
    将int 转换为string 函数 to_string()
    stl find_first_not_of()函数
    小写转变为大写函数toupper()
    基础实验2-2.3 组合数的和 (15分)
    基础实验2-2.2 求集合数据的均方差 (15分)
    习题1.9 有序数组的插入 (20分)
    用eclipse运行算法第四版的BinarySearch
    关于脱发
    HUD-2586(LCA板子)
  • 原文地址:https://www.cnblogs.com/dongruiha/p/6912445.html
Copyright © 2020-2023  润新知