检测是否从页面加载了应用

时间:2015-08-03 18:31:28

标签: javascript facebook facebook-graph-api

所以我的应用程序(大部分)正在运行。这是一个企业应用程序,我们的客户将“安装”在他们自己的Facebook页面上,并让他们的客户可以运行。在连接过程中,我使用FB UID确定他们在我们系统上的帐户,将该UID连接到本地帐户ID。我在数据库中保存了该连接,因此当从Facebook帐户触发应用程序时,我使用该映射来访问正确的数据。

第一个问题:我希望能够检测到应用程序是从Facebook页面触发的。我进入了“应用程序设置”页面,并使用安全URL设置了“页面选项卡”平台。但是当我的应用程序添加到页面选项卡时,不会调用该URL,但会调用Secure Canvas URL。为什么?我认为这是为我的应用程序提供安全页面选项卡URL的重点。

但是,如果这不起作用,有没有办法确定我的应用程序是从页面选项卡调用而不是其他方式?不那么干净,但也会这么说。

我使用Javascript API登录,并将App连接到页面。这一切都运作良好。

1 个答案:

答案 0 :(得分:1)

这在Page Tab App documentation

中得到了解答
  

当用户选择您的页面标签时,他们的浏览器将发送HTTP POST   请求您的应用的安全页面标签网址。此请求将包含一个   signed_request参数中的签名请求包含您可以使用的字段   自定义返回给用户的内容。

如果您发现“错误”错误。网址已触发,请确保您在收到用户浏览器的初始POST请求后或使用Facebook登录后不会意外重定向(例如,如果打开对话框时您的redirect_uri意外地将所有用户发送到登录后使用相同的URL,而不是回到他们从中触发流量的位置