Fat free framework Auth与fatfree框架

Fat free framework Auth与fatfree框架,fat-free-framework,Fat Free Framework,我一直在玩的fatfree认证使用两个路径登录和注销。我第一次在url中使用登录时,出现了一个对话框,询问用户名和密码。在表字段“user_name”中输入用户名,在字段“user pass”中输入密码后,我得到了true的$result,因此网页显示它可以工作。有趣的是,我没有得到代码newsession()get('SESSION.pass')时,代码>任何地方都可以显示正确,表明身份验证启动会话 在我的/logout路径中,在echo$f3->get('SESSION.pass')之后 我

我一直在玩的fatfree认证使用两个路径登录和注销。我第一次在url中使用登录时,出现了一个对话框,询问用户名和密码。在表字段“user_name”中输入用户名,在字段“user pass”中输入密码后,我得到了
true
$result
,因此网页显示它可以工作。有趣的是,我没有得到代码
newsession()/logout
echo$f3->get('SESSION.pass')时,代码>任何地方都可以显示正确,表明身份验证启动会话

在我的
/logout
路径中,在
echo$f3->get('SESSION.pass')之后
我有
$f3->clear('SESSION')

然而,如果我在
/login
url和注销url之间来回切换,对话框将不再显示,注销时仍显示“1234”,即SESSION.pass。我原以为在进入
/logout
url之后,会话将被清除,因此在返回
/login
url之后,我认为它将打开登录对话框进行登录

简而言之,我的问题是“如何注销Auth”?文档中似乎没有提到这一点

$f3->route('GET    /login',
  function($f3)
  {
    $db = new \DB\SQL('mysql:host=localhost;port=3306;      dbname=accra_names2','root','victoria');   
    $user = new DB\SQL\Mapper($db, 'users');

    $auth = new \Auth($user, array('id'=>'user_name', 'pw'=>'user_pass'));
    $result = $auth->basic(); // a network login prompt will display to authenticate the user 
    $f3->set('SESSION.pass','1234');

    if($result)
    //result true
    {
      echo "it works";
    }
  }
);

$f3->route('GET    /logout',
  function($f3)
  {
    echo "you want to log out ";
    echo $f3->get('SESSION.pass');
    $f3->clear('SESSION');
  }
);
实际上,您的问题是“如何从HTTP基本身份验证中注销”。 这里有几个关于它的主题和答案,就像这个 因此,如果您想完全控制登录/注销机制,最好使用自己的html表单,而不是浏览器的基本登录框。

实际上,您的问题是“如何从HTTP基本身份验证中注销”。 这里有几个关于它的主题和答案,就像这个 因此,如果您想完全控制登录/注销机制,最好使用自己的html表单,而不是浏览器的基本登录框。

实际上,您的问题是“如何从HTTP基本身份验证中注销”。 这里有几个关于它的主题和答案,就像这个 因此,如果您想完全控制登录/注销机制,最好使用自己的html表单,而不是浏览器的基本登录框。

实际上,您的问题是“如何从HTTP基本身份验证中注销”。 这里有几个关于它的主题和答案,就像这个
因此,如果你想完全控制登录/注销机制,你最好使用自己的html表单,而不是浏览器的基本登录框。

cheers ikkez我转而使用web表单发送帖子,并在这里使用了一些想法:我对它的工作方式很满意。我在路由中尝试了一个问题:函数beforeRoute($f3){与普通的$f3->route('GET/somepage',函数($f3){}不同,它不起作用-要么我理解错误,要么键入错误否beforeroute是从您设置路由的任何控制器类调用的钩子。因此,如果您有$f3->route('GET/somepage','controller/Page'));然后在此之前,此路线的路线进入您的页面类,位于controller/page.phpok,让auth工作,并在此处建立一个无装饰的论坛:将阅读fatfree docscheers ikkez,我改为使用web表单,并在此处发送帖子和使用想法:我对它的工作方式感到满意。我在路线中尝试了一个问题:function beforeRoute($f3){}而不是普通的$f3->Route('GET/somepage',函数($f3){}它不起作用-要么我理解错误,要么键入错误beforeroute是从您设置路由的任何控制器类调用的钩子。因此,如果您有$f3->Route('GET/somepage','controller/Page'));然后在此之前,此路线的路线进入您的页面类,位于controller/page.phpok,让auth工作,并在此处建立一个无装饰的论坛:将阅读fatfree docscheers ikkez,我改为使用web表单,并在此处发送帖子和使用想法:我对它的工作方式感到满意。我在路线中尝试了一个问题:function beforeRoute($f3){}而不是普通的$f3->Route('GET/somepage',函数($f3){}它不起作用-要么我理解错误,要么键入错误beforeroute是从您设置路由的任何控制器类调用的钩子。因此,如果您有$f3->Route('GET/somepage','controller/Page'));然后在此之前,此路线的路线进入您的页面类,位于controller/page.phpok,让auth工作,并在此处建立一个无装饰的论坛:将阅读fatfree docscheers ikkez,我改为使用web表单,并在此处发送帖子和使用想法:我对它的工作方式感到满意。我在路线中尝试了一个问题:function beforeRoute($f3){}而不是普通的$f3->Route('GET/somepage',函数($f3){}它不起作用-要么我理解错误,要么键入错误beforeroute是从您设置路由的任何控制器类调用的钩子。因此,如果您有$f3->Route('GET/somepage','controller/Page'));然后在控制器/page.phpok上的page类中加入此路由的beforeroute,并在此处创建一个无装饰论坛:将阅读无脂肪文档