token问题?

新手上路,请多包涵
if($manager){
                //登录成功
                
                $token = \tools\jwt\Token::getToken(100);
                $data =[
                    'expire' => 7200,
                    'token'  => $token

                ];

                return json($data);

                
                       
                //页面跳转
                 $this->success('登录成功', 'index/index/index' );

            }else{
                //用户名或密码错误
                $this->error('用户名或密码错误');
            }

纯小白一个,想问一下各位大神,怎么样才能生成token,并跳转成功?

阅读 1.3k
1 个回答

在一个方法中不能同时实现返回token且跳转的。
但可以考虑下面两种方案:

  1. (api方案)前端使用接口进行登录,后端给前端返回token或者失败信息,由前端进行调转的判断
  2. (前后端不分离情况下,用地址传参)给跳转的地址上拼接token信息,在目标页面中取出来。
  3. (前后端不分离情况下,使用session传)使用官方推荐的重定向传参方式:点击查看相关文档

方案一为最常用方案适合各种情况,方案3为前后端不分离时可以考虑的方案。

# 第三种方案示例:
<?php
namespace appcontroller;
class Index
{
    public function index()
    {   
        # 在with中设置要传递的数据
        return redirect('/hello')->with('name','thinkphp');
    }
    
    public function hello()
    {   
        # 在此处取出传递的数据
        $name = session('name');
        return 'hello,'.$name.'!';
    }    
}
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题