【发布时间】:2011-07-31 00:49:16
【问题描述】:
我必须将 Facebook Credits 添加到我的应用程序中,为此我必须激活“OAuth 2.0 for Canvas”,它应该向我的应用程序发送签名请求
但我注意到,当我在一段时间内(或在不同的浏览器中)不使用该应用程序后首次启动该应用程序时,signed_request 为空。如果我重新加载页面,那么它就在那里。但第一次,它总是空的。我使用 $_REQUEST['signed_request'] 来获取它。
我的猜测是,这一定与 cookie 或会话过期有关。
有什么想法吗?
【问题讨论】:
-
我发现了一些可能有帮助的东西:第一次调用应用程序时,它确实获得了签名请求。但是,然后, require_login() 强制页面重新加载,并且在重新加载时,signed_request 为空。仅当您有一段时间未使用该应用程序或删除 cookie 时才会发生这种情况。顺便说一句,我必须使用特殊版本的 require_login 来防止它重定向到我的托管 url(而不是应用程序 url)......我从这里得到了窍门 foobots.net/breakouts.html (iframe_require_login)
-
到目前为止,我想唯一的解决方案是只使用 GRAPH api 并摆脱 REST api