Php Facebook canvas应用程序身份验证重定向到我的域

Php Facebook canvas应用程序身份验证重定向到我的域,php,facebook,facebook-authentication,Php,Facebook,Facebook Authentication,我尝试了几种方法,例如运气不佳。我在用他们的 现在的情况是,该应用程序在获得身份验证后被重定向到我的站点 <?php require_once 'php-sdk/facebook.php'; $app_id = "***"; $app_secret = "***"; $facebook = new Facebook(array( 'appId'=> $app_id, 'secret' => $app_secret, 'cooki

我尝试了几种方法,例如运气不佳。我在用他们的

现在的情况是,该应用程序在获得身份验证后被重定向到我的站点

<?php 
require_once 'php-sdk/facebook.php';
$app_id = "***";
$app_secret = "***";
$facebook = new Facebook(array(
        'appId'=> $app_id,
        'secret' => $app_secret,
        'cookie' => true
));
$user = $facebook->getUser();
if(!$user)
{
    $auth_url = $facebook->getLoginUrl(array('scope' => 'email'));
    echo("<script> top.location.href='" . $auth_url . "'</script>");
}
?>
但是提示告诉我重定向url不属于我:

一起骑乘发生错误。请稍后再试

API Error Code: 191
API Error Description: The specified URL is not owned by the application
Error Message: Invalid redirect_uri: Given URL is not allowed by the Application configuration.
我还能做什么才能重定向回facebook内部的canvas应用程序?

API错误代码:191 API错误描述:指定的URL不属于应用程序 错误消息:无效重定向\u uri:应用程序配置不允许给定URL

应用程序设置中的命名空间/画布页面是否正确?您可能需要再次进行检查。

API错误代码:191 API错误描述:指定的URL不属于应用程序 错误消息:无效重定向\u uri:应用程序配置不允许给定URL


应用程序设置中的命名空间/画布页面是否正确?您可能需要再次进行检查。

您需要在域中指定要重定向到的特定页面,如下所示

$params = array(
  'scope' => 'email',
  'redirect_uri' => $authPageURL,
);

$auth_url = $facebook->getLoginUrl($params);
然后该页面需要使用301重定向到画布URL。因此,创建一个名为auth.php的页面,或者其他包含此内容的页面

if(isset($_REQUEST['error_reason']))
{
    header('Location: '.$auth_error_page);
}
else 
{       
    header('Location: '.$FB_canvas_page);
}

然后将该页面用作重定向URI。

您需要在域中指定要重定向到的特定页面,如下所示

$params = array(
  'scope' => 'email',
  'redirect_uri' => $authPageURL,
);

$auth_url = $facebook->getLoginUrl($params);
然后该页面需要使用301重定向到画布URL。因此,创建一个名为auth.php的页面,或者其他包含此内容的页面

if(isset($_REQUEST['error_reason']))
{
    header('Location: '.$auth_error_page);
}
else 
{       
    header('Location: '.$FB_canvas_page);
}

然后将该页面用作重定向URI。

您从$auth_url=$facebook->getLoginUrl(数组('scope'=>'email'))中获得了什么值?这是设置问题,请在Facebook上检查应用程序设置。如果您没有使用Facebook的官方php sdk,请切换到该sdk。您从$auth_url=$Facebook->getLoginUrl(数组('scope'=>'email'))中获得了哪些值?这是设置问题,请在Facebook上检查应用程序设置。如果你没有使用Facebook的官方php sdk,那么请切换到它。没有办法在iFrame画布内重定向?你想要的确切行为是什么?看起来您正试图在第一次加载应用程序时使用服务器端流进行身份验证,然后对应用程序的后续请求对用户数据进行处理。如果您从授权页面重定向到画布页面,您的内容将显示在应用程序页面的iframe中。服务器端流将从iframe中断以执行身份验证步骤。无法在iframe画布内重定向?您所追求的确切行为是什么?看起来您正试图在第一次加载应用程序时使用服务器端流进行身份验证,然后对应用程序的后续请求对用户数据进行处理。如果您从授权页面重定向到画布页面,您的内容将显示在应用程序页面的iframe中。服务器端流将中断iframe以进行身份验证步骤。