美文网首页
1session的使用

1session的使用

作者: rosekissyou | 来源:发表于2020-04-15 16:38 被阅读0次

按照文档的指示

https://hyperf.wiki/#/zh-cn/session?id=session-%e4%bc%9a%e8%af%9d%e7%ae%a1%e7%90%86

1 首先在项目内按照session

composer require hyperf/session

2 然后在手动配置 config/autoload/session.php

我这边的配置文件如下

use Hyperf\Session\Handler;

$driver = env('SESSION_DRIVER', 'file');

if ($driver == 'file') {

    $handler = Handler\FileHandler::class;

}

if ($driver == 'redis') {

    $handler = Handler\RedisHandler::class;

}

return [

    'handler' => $handler,

    'options' => [

        'connection' => 'session',

        'path' => BASE_PATH . '/runtime/session',

        'gc_maxlifetime' => 60 * 60 * 24 * 3, // 3天

    ],

];

也可以采取自动生成,在项目内运行 php bin/hyperf.php vendor:publish hyperf/session

这个命令会自动生成 config/autoload/session.php 

默认采用文件驱动,上面我的改成了Redis驱动

3 中间件配置为 HTTP Server 的全局中间件

config/autoload/middleware.php

里面加上一行代码

return [  

// 这里的 http 对应默认的 server name,如您需要在其它 server 上使用 Session,需要对应的配置全局中间件 

 'http' => [ \Hyperf\Session\Middleware\SessionMiddleware::class, ],];

4 代码设置使用session

use Hyperf\Contract\SessionInterface;

use Hyperf\Di\Annotation\Inject;//引入@Inject注解 这个一定要,文档里面没有说要,但是没有的话会报错

/**

* @Controller()

*/

class LoginController extends BaseController

{

    /**

      * @Inject()

      * @var \Hyperf\Contract\SessionInterface

*/

    private $session;

    // Hyperf 会自动为此方法生成一个 /home/login/hello 的路由,允许通过 GET 或 POST 方式请求

    /**

    * @RequestMapping(path="hello", methods="get,post")

*/

    public function hello()

{

        // 直接设置session参数

        $this->session->set('foo', 'bar');

        $session_data = $this->session->get('foo');

        return 'session:' .$session_data;

    }

这样运行会看到设置的session和获取到的session

相关文章

  • 1session的使用

    按照文档的指示 https://hyperf.wiki/#/zh-cn/session?id=session-%e...

  • iconfont的使用(下载使用)

    1、下载文件 2、在生命周期中引入项目 beforeCreate () { var domModule = ...

  • Gson的使用--使用注解

    Gson为了简化序列化和反序列化的过程,提供了很多注解,这些注解大致分为三类,我们一一的介绍一下。 自定义字段的名...

  • 记录使用iframe的使用

    默认记录一下----可以说 这是我第一次使用iframe 之前都没有使用过; 使用方式: 自己开发就用了这几个属...

  • with的使用

    下面例子可以具体说明with如何工作: 运行代码,输出如下

  • this的使用

    什么是this? this是一个关键字,这个关键字总是返回一个对象;简单说,就是返回属性或方法“当前”所在的对象。...

  • this的使用

    JS中this调用有几种情况 一:纯粹的函数调用 这是函数的最通常用法,属于全局性调用,因此this就代表全局对象...

  • ==的使用

    积累日常遇到的编码规范,良好的编码习惯,持续更新。。。 日常使用==用于判断的时候,习惯性将比较值写前面,变量写后...

  • this的使用

    1.默认绑定,就是函数立即执行。 函数立即执行就是指向window,但是如果是node环境,就是指向全局conso...

  • %in% 的使用

    写在前面:From 生信技能书向量难点之一:%in% 难点 (1)== 与 %in% 的区别== 强调位置,x和对...

网友评论

      本文标题:1session的使用

      本文链接:https://www.haomeiwen.com/subject/dqwcvhtx.html