我的Facebook应用程序上的签名请求存在问题。第一次是好的,我知道用户是否喜欢我的应用程序。但是当我重新加载应用程序(链接,表单等)时,我松开了签名请求,(只刷新[F5],与工程不同)..
我真的不明白为什么?
链接不再有效:(
在应用程序上,您可以看到$ facebook,$ _REQUEST和$ _SERVER信息。
谢谢大家的时间和帮助。
答案 0 :(得分:4)
已签名的请求位于Facebook推介的标题中。它不是从链接到链接维护的,因为后续引用将来自您自己的页面。使用signed_request获取一些信息并将其保留在页面之间的会话中。
答案 1 :(得分:1)
您只有一次能够获得signed_request。这正是Facebook在iframe中加载你的应用程序的时候。然后,您必须保存signed_request以供进一步使用(子页面)。在那里,您必须通过$ _REQUEST检查数据或回退到您存储的signed_request值。 这是fbHelper组件的一个小例子。我希望这可能会给你一些如何处理这个问题的想法:
来源:http://www.facebook.com/HelperComponentlCommunity/app_412923142052609
if(array_key_exists('signed_request', $_REQUEST))
$signed_request = $_REQUEST['signed_request'];
elseif(array_key_exists('signed_request' . $this->pageId, $_SESSION))
$signed_request = $_SESSION['signed_request' . $this->pageId];
else
return false;
$facebook_data= $this->parse_signed_request($signed_request);