我遇到了几个问题,不知道是否有人有什么见解。我正在使用最新的php-sdk,我正在开发一个画布应用程序,它有许多不同的步骤。这些步骤分布在多个页面上。现在,当我第一次进入这个应用程序时,一切似乎都很正常。访问令牌就在那里,我可以调用api函数。在第二个页面(链接到相同的iframe中),我得到了OAuth错误。现在,如果我在第二页使用这个:
$me = $facebook->getUser();
var_dump($me);它会返回正确的用户id,但在尝试使用api查询(特别是本例中的FQL查询)时,仍然会出现错误
现在,请记住这些链接是在iframe中的,所以我假设signed_request在某个地方迷路了,我知道facebook通常会通过帖子发布这个信息。如果我将所有链接都设置为带有url的target="_parent“,比如http://apps.facebook.com/myapp/page2.php,那么一切都会正常工作。Facebook这次显然发布了正确的信息。随后,当我使用只重定向iframe的链接时,它似乎再次正常工作(暗示在某个地方设置了cookie )。
现在我已经看到了其他没有target="_parent“的应用程序,它们似乎工作正常,只是在随后的点击中加载了iframe,而不是整个facebook网站。所以我只能假设他们把这些信息存储在某个地方。我试着使用httpfox检查这些应用程序,但我看不到任何明显的东西。有没有人有关于多页应用的最佳实践的链接?我知道我可以使用完整的urls和target="_blank“来解决这个问题,但我想知道这里发生了什么。我看过开发人员文档和画布页面示例,但没有什么明显的东西。
如有任何帮助或信息,我们将不胜感激
非常感谢
发布于 2011-12-31 03:29:22
有一些方法可以做到这一点。
signed_request https://stackoverflow.com/questions/8683111
复制相似问题