当输入到画布URL时,如何将用户自动重定向到oauth对话框?

时间:2012-10-24 17:57:21

标签: facebook codeigniter authentication

此致

返回,当“Authenticated Referrals”未折旧时,如果用户通过画布URL输入我的facebook应用程序,则被重定向到对话授权(用于权限)。

现在该选项不存在,我必须手动完成,以便您可以通过画布重定向网址。

我正在使用Codeigniter,从我看到的情况来看,facebook取消了我所做的任何重定向。

这是我的代码:

try {
            $fb_id = $this->facebook->getUser();
            if ($fb_id) {
                $fb_data = $this->facebook->api('/me');
                return $fb_data;
            } else {
                echo 'You don't give me the permissions';
                $url = $url = $this->facebook->getLoginUrl(array(
                    'scope' => 'email,user_likes,user_about_me,publish_stream,user_birthday',
                    'redirect_uri' => $this->config->item('app_name')
                        ));
                header("location:$url");
                redirect($url, 'refresh');
            }
        } catch (Exception $exc) {
            echo $exc;
        }

有更简单的方法吗?你能告诉我的任何例子吗?提前致谢

注意:我的应用程序是(现在)用户的录音机音频 首先是注册个人信息。 然后显示录音机音频。

我的目标是当新用户找到我的应用程序(apps.facebook.com/my_app)时,输入我的应用程序并自动显示oauth对话框以获得权限(如前所述)。然后进入注册视图。

1 个答案:

答案 0 :(得分:2)

这与codeigniter无关,只需确保您的redirect_uri是您的画布页网址“apps.facebook.com/app_name”。

然后使用Javascript将用户重定向到OAuth对话框,例如:

echo("<script> top.location.href='" . $url . "'</script>");

还可以查看Canvas Tutorial