Facebook graph api iFrame中的访问请求变量

Facebook graph api iFrame中的访问请求变量,facebook-graph-api,facebook,Facebook Graph Api,Facebook,我正在尝试建立一个多人游戏作为一个Facebook应用程序,因此,在这里我给一个玩家一个链接,他与他的朋友共享,这样他们就可以一起玩了, FB应用程序链接属于url类型 https://apps.facebook.com/app-name/ 假设某人共享一个链接 https://apps.facebook.com/app-name/?game=key 现在真正的问题出现了,当前作为iframe运行的应用程序如何访问父windows游戏变量?您必须使用app\u data参数。请查看以下链接:

我正在尝试建立一个多人游戏作为一个Facebook应用程序,因此,在这里我给一个玩家一个链接,他与他的朋友共享,这样他们就可以一起玩了, FB应用程序链接属于url类型

https://apps.facebook.com/app-name/
假设某人共享一个链接

https://apps.facebook.com/app-name/?game=key

现在真正的问题出现了,当前作为iframe运行的应用程序如何访问父windows游戏变量?

您必须使用
app\u data
参数。请查看以下链接:

因此,基本上,app_数据参数将在iFrame内的
签名_请求中传递给您的app。为了实现这一点,您必须对参数进行json_编码。因此,在您的示例中:

http://apps.facebook.com/my-app/?app_data={'game': 'key'}
最后是url编码:

http://apps.facebook.com/my-app/?app_data=7B%27game%27%3A+%27key%27%7D
要获得访问权限,必须读取已签名的_请求(PHP示例):


基本上不用问号,只需将其添加到URL即可:

只需确保将应用程序设置为在以下位置处理事情:

我在一个重复的问题上发布了这个问题的更深入的答案:


我也遇到了同样的问题,答案很简单:

https://apps.facebook.com/app-name/?myvalue=12
在页面应用程序中,您只能使用“app_data”作为参数,但在画布应用程序中,您只需使用自己的参数,就可以通过$_REQUEST['myvalue']或$_get['myvalue']获取参数:

array(2) { ["myvalue"]=> string(2) "12" ["signed_request"]=> string(427) "..." } 

从文档中可以看出,这适用于选项卡应用程序,但不适用于画布应用程序。我尝试做同样的事情,但这个例子不起作用。
array(2) { ["myvalue"]=> string(2) "12" ["signed_request"]=> string(427) "..." }