PHP中ThinkPhp框架的token怎么使用
发表于:2024-10-27 作者:千家信息网编辑
千家信息网最后更新 2024年10月27日,这篇"PHP中ThinkPhp框架的token怎么使用"文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们
千家信息网最后更新 2024年10月27日PHP中ThinkPhp框架的token怎么使用
这篇"PHP中ThinkPhp框架的token怎么使用"文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇"PHP中ThinkPhp框架的token怎么使用"文章吧。
一、token在ThinkPhp框架的使用
1. 首先在数据库的 users 表中添加两个字段token、time_out
token 用于存储用户的 token
time_out 用于设置用户 token 的过期时间
2.创建函数
checkToekn($token)
函数用于检验 token 是否存在, 并且更新 token。
public function checkToken($token) { $user = new \app\index\model\Users(); $res = $user->field('time_out')->where('token', $token)->select(); if (!empty($res)) { //dump(time() - $res[0]['time_out']); if (time() - $res[0]['time_out'] > 0) { return 90003; //token长时间未使用而过期,需重新登陆 } $new_time_out = time() + 604800; //604800是七天 $res = $user->isUpdate(true) ->where('token', $token) ->update(['time_out' => $new_time_out]); if ($res) { return 90001; //token验证成功,time_out刷新成功,可以获取接口信息 } } return 90002; //token错误验证失败}
3.创建函数
douserLogin($username,$password)
用于验证用户名密码, 并登陆, 返回 token 信息。
public function douserLogin() { $user = new \app\index\model\Users(); $userisset = $user->where('username', $username)->find(); if ($userisset == null) { return json_decode('{"user":"' . $username . '","code":"400","msg":"用户不存在"}'); } else { $userpsisset = $user ->where('username', $username) ->where('password', sha1(md5($password)))->find(); if ($userpsisset == null) { return json_decode('{"user":"' . $username . '","code":"401","msg":"密码错误"}'); } else { //session('user', $username); $token = $this->makeToken(); $time_out = strtotime("+7 days"); $userinfo = ['time_out' => $new_time_out, 'token' => $token]; $res = $user->isUpdate(true) ->where('username', $username) ->update($userinfo); if ($res) { return json_decode('{"user":"' . $username . '","toekn":'.$token.' "code":"0","msg":"登录成功"}'); } } }}
二、Token的概念
token是客户端频繁向服务器端请求数据,服务器频繁的去数据库查询用户名和密码判断用户名和密码正确与否,并作出相应的提示,在这样的背景下,token便应运而生了。
以上就是关于"PHP中ThinkPhp框架的token怎么使用"这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注行业资讯频道。
用户
内容
框架
密码
成功
函数
数据
用户名
验证
频繁
信息
数据库
文章
服务器
知识
篇文章
错误
服务
登陆
应运而生
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
数据库技术与应用开发大作业
汽车车载网络技术课件
目前哪个云服务器稳定
百威数据库语句
电子科大网络安全专业就读校区
高青服装软件开发
我与网络安全六年级作文
20计算机网络技术专业分析
软件开发几个部门
用数据库做乳品订饮系统
香港启荣电子软件开发有限公司
我的世界少人服务器
思科网络安全专利
腾讯云服务器购买了怎么用
周鸿祎纪录片网络安全
齐齐哈尔市委网络安全银行
java聊天服务器
网络技术人员高级课程
网络安全督查情况
墨子数据库
国内有做图形软件开发的吗
广发恒生科技指数和交银互联网
湖南免备案服务器虚拟主机
app在线软件开发
攀枝花 软件开发
网络技术专业和网络工程专业
网络技术基础期末考试题
国家网络安全中心重庆
网络安全 宣传语
铜陵市委网信办网络安全征文
- 上一篇
'url' requires a non-empty first argument. The syntax changed in Django 1.5, see the docs
Django运行时出现'url' requires a non-empty first argument的解决办法:参考了stackoverflow里面的一个帖子I started using Dja
- 下一篇
怎么理解Impala元数据
本篇文章给大家分享的是有关怎么理解Impala元数据,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。背景Impala是一个高性能的OLAP