Sanctum 没办法手动设置过期时间吧?

1. 运行环境

1). 当前使用的 Laravel 版本?

Laravel 9.5.1

2). 当前使用的 php/php-fpm 版本?

8.0.2

2. 问题描述?

之前用 auth-jwt 是可以手动指定过期时间的,比如网站有个记住我的功能。

3. 您期望得到的结果?

在代码里指定过期的时间

4. 您实际得到的结果?

没有找到这个功能。

无论在现实或是网络中,我都是孤独的。
《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
最佳答案

Sanctum::$accessTokenAuthenticationCallback

// AuthServiceProvider.php

boot(){
    Sanctum::$accessTokenAuthenticationCallback = fn($accessToken, $isValid)=> $this->callYourCallable($accessToken, $isValid)
}
2年前 评论
讨论数量: 21

Sanctum::$accessTokenAuthenticationCallback

// AuthServiceProvider.php

boot(){
    Sanctum::$accessTokenAuthenticationCallback = fn($accessToken, $isValid)=> $this->callYourCallable($accessToken, $isValid)
}
2年前 评论

你说的是 token 生成之后的有效期吗?

config/sanctum.php

'expiration' => env("SANCTUM_TTL", 10080),
'refresh_expiration' => env("SANCTUM_REFRESH_TTL", 43200),
2年前 评论
小李世界 (楼主) 2年前
MArtian (作者) 2年前
小李世界 (楼主) 2年前
王小大 2年前
MArtian (作者) 2年前
王小大 2年前
小李世界 (楼主) 2年前

Sanctum::$accessTokenAuthenticationCallback

// AuthServiceProvider.php

boot(){
    Sanctum::$accessTokenAuthenticationCallback = fn($accessToken, $isValid)=> $this->callYourCallable($accessToken, $isValid)
}
2年前 评论

这个问题解决了 但是我想知道的是这个性能上面的问题怎么解决 能换成redis就完美了

2年前 评论
巴啦啦臭魔仙 2年前
周小云 (作者) 2年前
yybawang

表里有 last_used_at 字段,我是加了个定时任务判断的,超过多久不用就删除了

2年前 评论
小李世界 (楼主) 2年前

代码里面动态修改过期时间
比如记住登录状态后请求里加入标识

if($remember)
{
    //记住登录 设置有效期 3天
    config(['sanctum.expiration' => 60*12*6]);
}
2年前 评论
周小云 2年前
巴啦啦臭魔仙 2年前
小李世界 (楼主) 2年前
echoyl (作者) 2年前

我的是這樣寫的 續期 :joy: 還是翻它的源碼找到的

file

2年前 评论

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