CakeRequest $请求,CakeResponse $响应

时间:2012-08-25 20:58:42

标签: php cakephp oauth cakephp-2.0

此代码仅在我执行简单发布或获取请求时有效。

   public function authenticate(CakeRequest $request, CakeResponse $response) { 
        //some code - facebook
    }

但在我的情况下,我有两个选择。通过Facebook登录或正常登录(表格)。

目前问题是,当我点击提交表单时,还将执行功能身份验证。所以我的问题是:如何检测Post请求的名称是什么?像isset($_POST['submitted_fb']

这样的东西

主要问题是当我做任何Post请求时总是调用函数。

1 个答案:

答案 0 :(得分:1)

只有在您未登录或无权查看页面时才会进行身份验证。

做这样的验证:

public function authenticate(CakeRequest $request, CakeResponse $response) { 
     if($request->data['loginType'] == 'facebook') {
         // Do facebook login
     } else {
         // Do form login
     }
}

并在视图中添加隐藏的表单:

echo $this->Form->input('loginType', array('type' => 'hidden', 'value' => 'facebook'));