";适当的“;在Facebook标签应用程序中更改页面的方式


"Proper" way to change pages within a Facebook tab app

通过官方文档和讨论,facebook应用程序上有很多文档,但我仍然找不到确切的答案。

我有一个脸书标签应用程序,应该有3个页面:一个不需要授权的登录页,一个确实需要授权的内部页面,以及一个显示第2页上发生的事情的结果的最终页面(也需要授权)。

我的计划是简单地在每个页面之间POST数据,并根据变量动态地包含文件。然而,问题是我在发布后丢失了我的签名请求。我应该只使用100%AJAX加载新页面并发布回服务器吗?谢谢

当用户加载您的画布url:https://apps.facebook.com/your_app时,在这两种情况下,您都将通过授权用户和非授权用户获得signed_request

但如果用户验证了signed_request,则会包含用户的facebook id和访问令牌,以便在图形api上查询。

通过使用facebookjavascript api,您将获得包括signed_request在内的cookie。

对于第一个页面加载,通过signed_request可以识别用户。

对于连续的呼叫,您使用cookie

对于您的案例:

登录页:您已获得"匿名"签名请求第2页:

您可以通过javascript方法请求授权,然后获得cookie对于连续的页面,你可以做任何你想要的

或者你可以重定向到授权页面,在返回时你得到了包括用户信息和访问令牌的signed_request,对于下一个页面,你可以通过http param或你写的cookie或facebookjavascript sdk写的cookie来传递它.

注意:很抱歉回答太长:/