位置: 编程技术 - 正文

利用php-cli和任务计划实现刷新token功能的方法(phpinclude)

编辑:rootadmin

推荐整理分享利用php-cli和任务计划实现刷新token功能的方法(phpinclude),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:php怎么运用,使用php代码的方法,php使用教程,php使用教程,使用php,使用php代码的方法,phpinclude,使用php代码的方法,内容如对您有帮助,希望把文章链接给更多的朋友!

1、业务需求

需要实现这样一个功能:在第三方授权的认证当中,在用户首次登录授权我们会得到一个access_token,有效期为小时,还会得到一个refresh_token,有效期为天。

我们只要保存好这个refresh_token,在天内我们都可以用这个refresh_token去请求一个api,他会返回一个新的access_token。这样我们只需要让用户授权一次,我们就可以获得长达天的一个授权期限。

这里可以分为几个点:

<1>这个应该是要定期执行的一个任务。

小时才会过期,那么我们小时刷一次就足够了,并不需要很频繁的刷新。假设这样一种情况:让一个页面持续的运行,用一个while的死循环去执行一个任务,执行完之后sleep很长一段时间,然后再继续执行。这样做也是可以的,但是比较占资源。他执行的时间很少,等待的时间却很长,没必要这样一直等待。

<2>这个应该不需要是一个可以访问到的页面。

是我们内部执行的一个任务,不需要是人人可以访问到的一个页面。

<3>这个页面应该也要和框架融合在一起,可以访问到各种资源。

一个普通的php页面恐怕是不行的,我们需要跟框架融合的一个页面,需要可以访问到各种资源,比如说redis,比如说config,等等。

2、用cli模式运行codeigniter的页面

<1>cli的页面特性

什么是cli模式?就是命令行模式。我们可以不用url来访问php页面,而使用命令行来访问,这是可以的。

对页面来说,什么都不需要改变,比如:

>同样要是一个普通的controller,要继承自CI_Controller;

>要定义路由器,这个页面必须也是经由路由访问得到;

>甚至仍然可以添加这样的声明

defined('BASEPATH') OR exit('No direct script access allowed');

>可以通过添加一个判断让页面只能让cli访问:

>通过echo打印在命令行上面,就如打印在页面上一样

<2>怎么通过命令行访问

利用php-cli和任务计划实现刷新token功能的方法(phpinclude)

cd E:xxxxxxphpSite //网站的根目录,即index.php所在目录

php index.php aaa bbb ccc //即访问网址为yourdomain.com/index.php/aaa/bbb/ccc这样的地址注意:

>第一行是转到网站根目录这个路径;

>第二行php是调用了php.exe这个是因为我们有设置php的环境变量;

>index.php不可以缺少,因为这里我们没有走服务器了,没有经过服务器的url-rewrite,所以这个index.php是必不可少的。

我们可以将这两行代码放在一个文本文件里面,将名字改为refresh.bat,双击这个bat文件,他就会执行一次,相当于打开命令行来执行

如果我们需要调试的话,不要让弹出的命令行自动关掉,我们可以在加上第三行代码,加一个单词就可以了:pause

他就会停住并且显示相关的信息方便我们调试。

<3>页面调试

如下例子,此页面通过把一个值每刷新页面一次累加一次,存在redis里,来验证页面是否有被访问过:

3、创建计划任务让他运行bat文件

4、刷新token

<1>命名的规则

刷新token首先想到的是遍历redis。redis那么多应该怎么遍历?我想到的是给不同类型redis设定不同的前缀。

比如说,所有用户的refresh_token的key都这样写:"refresh_token_用户id"。然后用redis的模式匹配就可以把以"refresh_token_"开头的key找出来,然后一条条处理。

<2>redis遍历

首先,redis是有模式识别的功能,参见手册:

注意:这里要特别说明一下,我们在写入这个token的时候,会将有效期写进去,那么只要这个有效期的值是正确的,我们取到这个token必定是有效的,那么我们拿这个有效的token去刷新,必然是成功的。一般不存在刷新失败的情况。因为这个token一旦失效我们也就取不到了。

以上这篇利用php-cli和任务计划实现刷新token功能的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持积木网。

Laravel5中Cookie的使用详解 今天在Laravel框架中使用Cookie的时候,碰到了点问题,自己被迷糊折腾了半多小时.期间研究了Cookie的实现类,也在网站找了许多的资料,包括问答。发现

PHP实现中国公民身份证号码有效性验证示例代码 本文将使用Java实现中国公民(位或者位)身份证号码的相关验证,功能如下:身份证号有效性验证分析详细身份证信息生成一个虚拟的省份证号码。

Yii2表单事件之Ajax提交实现方法 本文实例讲述了Yii2表单事件之Ajax提交实现方法。分享给大家供大家参考,具体如下:前言Yii2现在使用JS都必须要注册代码了。要实现Ajax提交,有两种

标签: phpinclude

本文链接地址:https://www.jiuchutong.com/biancheng/293540.html 转载请保留说明!

上一篇:利用php-cli和任务计划实现订单同步功能的方法(php include require)

下一篇:Laravel5中Cookie的使用详解

  • 资源税计入什么科目
  • 小规模企业收入怎么做账
  • 新准则经营租赁会计分录
  • 增值税票购买份数满了怎么办
  • 两家公司实际控制人为一个人
  • 机票行程单丢了可以重新打吗
  • 企业内部转账应注意什么
  • 员工个人部分所承担的社保会计分录怎么做
  • 土地出让金进项税税率
  • 用白纸写的收据怎么入帐?
  • 对公受托理财赎回分录
  • 现金收据为什么也在自制原始凭证的范畴呢?
  • 烟草批发环节加征的消费税税率是多少
  • 分公司的收入
  • 怎么去税务局报账流程
  • 仓储租赁增值税
  • 去税务局交的社保能退么
  • 房地产行业零税率发票
  • 企业所得税季报弥补以前年度亏损怎么填
  • 银行贷款的纳税申报表指的所得税还是增值税
  • 政策性搬迁税收政策指引
  • 外单位人员能在单位借款吗
  • 以下凭证免征印花税的有
  • 应收账款确认无法收回
  • 技术服务费怎么开票
  • 企业出售旧设备的收入要纳税吗
  • 没有税务章的收款收据怎么做账?
  • 合伙企业对外投资
  • 收购未税矿产品的其他单位,其纳税地点为收购地
  • 公司收到残联补助如何开票
  • 小规模纳税企业所得税优惠政策
  • 电脑bios启动项设置
  • window10如何设置休眠时间
  • 贷款的资产减值怎么处理
  • 分配结转制造费用时借方科目
  • php做
  • PHP:proc_close()的用法_命令行函数
  • php生成zip压缩包
  • 好奇地看着我
  • hpzts04.exe是什么进程 有什么作用 hpzts04进程查询
  • 其他免税销售额>0时,免税性质代码不能为空是什么意思
  • grub-install --target
  • 税控盘全额抵扣发票怎么勾选
  • 理财收益 投资收益
  • 收到的赠品怎么做分录
  • 员工手机补助单怎么做账
  • 民办非企业单位属于什么类型
  • 小微企业所得税税率
  • 农机销售融资贷款流程
  • 为什么应交增值税要转入未交增值税
  • 成品油红字发票开具后库存数量如何冲回?
  • 医院能开增值发票吗
  • 季度所得税申报表营业收入怎么填
  • 服务费可以计入主营业务成本吗
  • 如何区分借贷方和负债方
  • 未交增值税账务处理
  • 专票已认证但又不能抵扣
  • 公益性捐赠支出计入什么科目
  • 转出未交增值税借方余额怎么处理
  • 确认收入一定要交增值税吗
  • 事业单位工会经费不足怎么办
  • 无票收入怎么做账,要交税吗,填入增值税申报表
  • 新办企业建账
  • ubuntuone
  • linux中,什么命令可以控制口令的存活时间?
  • VM虚拟机安装Harmonyos4
  • Window7+CentOS 6.5双系统安装图文方法
  • linux统计文件中每个单词出现的次数
  • windows 7安装步骤
  • windows7文件操作步骤
  • 使用灭火器人要站在上风口还是下风口
  • 测试Qt Quick在各个平台上的3D渲染性能
  • jquery animate源码
  • shell脚本中判断入参是否为空
  • 分享面试流程
  • 安卓获取手机号及通话状态权限
  • 秀屿区国税局服务电话
  • 划拨土地评估价
  • 作为税务人员哪些基本素质
  • 税务税率9个点怎么算
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设