Facebook SDK:从页面选项卡应用发送请求

Facebook SDK:从页面选项卡应用发送请求,facebook,facebook-timeline,Facebook,Facebook Timeline,我可以使用页面选项卡应用程序中的“多朋友请求选择器”向朋友发送请求,该链接如下所示: https://www.facebook.com/<my_page_name>/app_<my_app_id> https://www.facebook.com//app_ 我的朋友收到我的请求,并单击“接受”。它会转发到Facebook应用程序的真实链接,即: https://apps.facebook.com/<my_app_name>/?fb_source=requ

我可以使用页面选项卡应用程序中的“多朋友请求选择器”向朋友发送请求,该链接如下所示:

https://www.facebook.com/<my_page_name>/app_<my_app_id>
https://www.facebook.com//app_
我的朋友收到我的请求,并单击“接受”。它会转发到Facebook应用程序的真实链接,即:

https://apps.facebook.com/<my_app_name>/?fb_source=request&request_ids=<an_request_id>
https://apps.facebook.com//?fb_source=request&request_ids=
它不再位于页面选项卡中。在必须保留请求ID的情况下,如何将用户转发到第1个链接而不是第2个链接?我是否只需要制作一个
标题('Location:url')转发


p、 时间线已在使用。

是的,您必须转发到页面url,因为请求总是重定向到画布url

要传递请求ID,您可以使用
app\u data
字段。因此,不要重定向到
https://www.facebook.com//app_
您重定向到
https://www.facebook.com//app_?app_data=requestids
。这里requestId是实际值(画布获得的逗号分隔列表)

app_数据
作为其接收的
signed_请求的一部分,可供页面选项卡应用程序使用

发件人:

此外,如果在加载选项卡的URL的原始查询字符串中设置了app_数据参数,则您的应用程序还将收到一个名为app_data的字符串参数,作为签名的_请求的一部分。对于上面的Shop Now链接,可能如下所示:https://www.facebook.com/YourPage?v=app_1234567890&app_data=any_string_here". 如果控制链接的生成,则可以使用它自定义渲染的内容


是的,您必须转发到页面url,因为请求总是重定向到画布url

要传递请求ID,您可以使用
app\u data
字段。因此,不要重定向到
https://www.facebook.com//app_
您重定向到
https://www.facebook.com//app_?app_data=requestids
。这里requestId是实际值(画布获得的逗号分隔列表)

app_数据
作为其接收的
signed_请求的一部分,可供页面选项卡应用程序使用

发件人:

此外,如果在加载选项卡的URL的原始查询字符串中设置了app_数据参数,则您的应用程序还将收到一个名为app_data的字符串参数,作为签名的_请求的一部分。对于上面的Shop Now链接,可能如下所示:https://www.facebook.com/YourPage?v=app_1234567890&app_data=any_string_here". 如果控制链接的生成,则可以使用它自定义渲染的内容


几乎完美的答案。重定向链接应为:
https://www.facebook.com//app_?app_data=requestids
和PHP
标题('Location:url')
在这种情况下不起作用。需要使用客户端JavaScript重定向。很高兴它有帮助。我没有提到任何关于
标题的内容,因为它有时确实有效(当您还没有向浏览器发送任何输出时),很好。url,我对它的这种形式不是很确定,我已经习惯了老式的,
https://www.facebook.com/YourPage?v=app_1234567890&app_data=any_string_here
。无论如何,谢谢,我也学到了一些东西。仅供参考,URL的两种格式都有效,但Facebook似乎更喜欢我的版本,因为它是Timeline的默认链接格式。几乎完美的答案。重定向链接应为:
https://www.facebook.com//app_?app_data=requestids
和PHP
标题('Location:url')
在这种情况下不起作用。需要使用客户端JavaScript重定向。很高兴它有帮助。我没有提到任何关于
标题的内容,因为它有时确实有效(当您还没有向浏览器发送任何输出时),很好。url,我对它的这种形式不是很确定,我已经习惯了老式的,
https://www.facebook.com/YourPage?v=app_1234567890&app_data=any_string_here
。无论如何,谢谢,我也学到了一些东西。仅供参考,URL的两种格式都有效,但Facebook似乎更喜欢我的版本,因为它是Timeline的默认链接格式。