【问题标题】:Force jwt token expiration at midnight强制 jwt 令牌在午夜过期
【发布时间】:2017-08-10 10:14:25
【问题描述】:

我有一个使用 lexik/LexikJWTAuthenticationBundle 的 Symfony 应用程序。我可以将配置设置为在午夜后强制过期吗?

如何在当天午夜强制到期?

【问题讨论】:

    标签: jwt lexikjwtauthbundle


    【解决方案1】:

    正确的做法是read the documentation。他们说...

    1. 添加监听器
      services:
            acme_api.event.jwt_created_listener:
                class: AppBundle\EventListener\JWTCreatedListener
                arguments: [ '@request_stack' ]
                tags:
                    - { name: kernel.event_listener, event: lexik_jwt_authentication.on_jwt_created, method: onJWTCreated }
    
    1. 并在其中放入一些代码
    <?php
    
    namespace AppBundle\EventListener;
    
    use Lexik\Bundle\JWTAuthenticationBundle\Event\JWTCreatedEvent;
    
    class JWTCreatedListener
    {
        public function onJWTCreated(JWTCreatedEvent $event)
        {
            $expiration = new \DateTime(date('d-m-Y'));
            $expiration->add(new DateInterval('PT86400S'))
    
            $payload        = $event->getData();
            $payload['exp'] = $expiration->getTimestamp();
    
            $event->setData($payload);
        }
    }
    

    【讨论】:

      猜你喜欢
      • 2020-04-15
      • 2020-11-02
      • 2020-08-05
      • 1970-01-01
      • 2016-10-16
      • 2017-03-04
      • 2019-07-04
      • 2019-03-04
      • 1970-01-01
      相关资源
      最近更新 更多