千家信息网

PHP中ThinkPhp框架的token怎么使用

发表于:2024-09-27 作者:千家信息网编辑
千家信息网最后更新 2024年09月27日,这篇"PHP中ThinkPhp框架的token怎么使用"文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们
千家信息网最后更新 2024年09月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安全错误 数据库的锁怎样保障安全 软件开发过程控制工具 电脑无法连接数据库服务器 德惠智能化网络技术咨询有哪些 树莓派配置与云服务器配置 朔城区网络安全 常见的计算机网络安全威胁 医院体检数据库申请模板 江苏机械计算机网络技术推广服务 数据库在项目中的应用 金融数据库 知乎 数据库 表锁 行锁 河南外协加工软件开发 二五六互联网科技公司四川 华为最新的电脑服务器系统 中国的新型网络技术 通过堡垒主机登录不上服务器 vb如何创建一个数据库 php查询数据库页面制作 网络安全你我共建抄写内容 移动终端软件开发好就业吗 软件开发过程控制工具 个性化股票软件开发 津科软件开发公司怎么样 物联网技术之数据库 南沙区软件开发贵吗 一卡通服务器未响应怎么办 华为最新的电脑服务器系统 服务器最大的上市公司 数据库为只读 重量29公斤的浪潮服务器
0