chrome/ie从粉丝页面重定向到facebook应用程序时出错

chrome/ie从粉丝页面重定向到facebook应用程序时出错,facebook,facebook-iframe,Facebook,Facebook Iframe,我有点困惑。最基本的问题是,当我点击应用程序的图标时,我让它在firefox中正常工作,但在IE中,我得到错误“此内容无法在一个框架中显示”,而在chrome中,它永远不会打开应用程序并变为空白。这发生在我创建应用程序时使用的facebook个人资料和一个测试帐户上。奇怪的是,在我的另一个facebook帐户上,它在所有浏览器上都能正常工作。当直接从搜索或最近的应用程序转到时,该应用程序也可以工作。我最近更改了应用程序的名称和安全id,并将其重新连接到我的页面。在应用程序设置下,我的选项卡URL

我有点困惑。最基本的问题是,当我点击应用程序的图标时,我让它在firefox中正常工作,但在IE中,我得到错误“此内容无法在一个框架中显示”,而在chrome中,它永远不会打开应用程序并变为空白。这发生在我创建应用程序时使用的facebook个人资料和一个测试帐户上。奇怪的是,在我的另一个facebook帐户上,它在所有浏览器上都能正常工作。当直接从搜索或最近的应用程序转到时,该应用程序也可以工作。我最近更改了应用程序的名称和安全id,并将其重新连接到我的页面。在应用程序设置下,我的选项卡URL是正确的。“我的画布”页面顶部的代码包括:

<?php       
$app_id = "181247898619054";
$app_secret = "xxxxxxxxxxxxxxxxxxxxxxxxxxx";
$my_url = "https://apps.facebook.com/wellnessq/";
session_register();
session_start();


if (!isset($_REQUEST["code"]))
{
 $_SESSION['state'] = md5(uniqid(rand(), TRUE)); //CSRF protection
 $dialog_url = "http://www.facebook.com/dialog/oauth?client_id=" 
   . $app_id . "&redirect_uri=" . urlencode($my_url) . "&scope=email&state="
   . $_SESSION['state'];

 echo("<script> top.location.href='" . $dialog_url . "'</script>");
exit;
}
$code = $_REQUEST['code'];
{
  $token_url = "https://graph.facebook.com/oauth/access_token?"
   . "client_id=" . $app_id . "&redirect_uri=" . urlencode($my_url)
   . "&client_secret=" . $app_secret . "&code=" . $code;

 $response = file_get_contents($token_url);
 $params = null;
  parse_str($response, $params);

  $graph_url = "https://graph.facebook.com/me?access_token=" 
   . $params['access_token'];

  $user = json_decode(file_get_contents($graph_url));
 }

?> 

您可以使用PHP头重定向到您的链接吗

header( 'Location: http://www.yoursite.com/new_page.html' ) ;

我很好奇,如果Chrome不喜欢注入脚本重定向,它可能很容易将其与劫持企图混淆,然后放弃,或者显示错误。真正奇怪的是,它只发生在我的一个facebook帐户上,而另一个帐户在所有浏览器上都能正常工作。我删除了所有的cookies并再次尝试,但没有成功。是的,那不起作用。这很奇怪,因为它可以从facebook主页的应用程序列表中工作,但不允许从粉丝页面转到应用程序。这个问题过去并不存在。