Php Facebook画布应用程序:API错误代码:191:身份验证错误

Php Facebook画布应用程序:API错误代码:191:身份验证错误,php,facebook,facebook-authentication,facebook-apps,Php,Facebook,Facebook Authentication,Facebook Apps,我正在尝试使用facebook的示例设置一个新的facebook应用程序,但身份验证给了我一个错误 我先去developers.facebook.com/setup/并使用我网站的URL(尝试了基本文件夹和子文件夹:和) 画布URL: 安全画布URL:无 My index.php <?php $app_id = "XXXXXXXXXXXXXXXXXXXX"; $canvas_page = "http://apps.facebook.com/XXXXXXXXXXXXXXX/";

我正在尝试使用facebook的示例设置一个新的facebook应用程序,但身份验证给了我一个错误

我先去developers.facebook.com/setup/并使用我网站的URL(尝试了基本文件夹和子文件夹:和)

画布URL: 安全画布URL:无

My index.php

<?php 


 $app_id = "XXXXXXXXXXXXXXXXXXXX";

 $canvas_page = "http://apps.facebook.com/XXXXXXXXXXXXXXX/";

 $auth_url = "http://www.facebook.com/dialog/oauth?client_id=" 
        . $app_id . "&redirect_uri=" . urlencode($canvas_page);

 $signed_request = $_REQUEST["signed_request"];

 list($encoded_sig, $payload) = explode('.', $signed_request, 2); 

 $data = json_decode(base64_decode(strtr($payload, '-_', '+/')), true);

 if (empty($data["user_id"])) {
        echo("<script> top.location.href='" . $auth_url . "'</script>");
 } else {
        echo ("Welcome User: " . $data["user_id"]);
 } 

您必须将用户重定向回您的web,因此您的$canvas\u url变量必须是您的web url(您在应用程序设置中输入的)

我错过了这一点:(谢谢!现在我被重定向到..陷入了重定向循环。有什么想法吗?我看到你在解析签名的请求,我没有尝试过那种方法,我只是检查我是否收到了代码($\u GET['code],如果变量为空,则需要使用$auth_url重定向用户,如果不是,则可以继续进行web身份验证的下一步)可能的重复