Javascript Facebook API:如何验证web应用程序

Javascript Facebook API:如何验证web应用程序,javascript,facebook,api,authentication,authorization,Javascript,Facebook,Api,Authentication,Authorization,我正在尝试为一个webapp编写一个插件,使用Javascript API将其与facebook集成。该应用程序由我们的客户安装在他们自己的服务器上,每个服务器都有自己的站点名称。这给我带来了一个问题,因为Facebook希望我为应用程序指定一个站点url。每个客户的url都会不同。为每个客户创建一个新的应用程序不是一个选项 在我对这个问题的研究中,我似乎不得不假装成一个桌面应用程序,并遵循认证路径。我不知道怎么做 有人知道如何做到这一点吗?你是将该应用程序作为画布应用程序托管还是在facebo

我正在尝试为一个webapp编写一个插件,使用Javascript API将其与facebook集成。该应用程序由我们的客户安装在他们自己的服务器上,每个服务器都有自己的站点名称。这给我带来了一个问题,因为Facebook希望我为应用程序指定一个站点url。每个客户的url都会不同。为每个客户创建一个新的应用程序不是一个选项

在我对这个问题的研究中,我似乎不得不假装成一个桌面应用程序,并遵循认证路径。我不知道怎么做


有人知道如何做到这一点吗?

你是将该应用程序作为画布应用程序托管还是在facebook之外托管

url对您重要吗?基本url和应用程序之间存在严格的一对一关系

许多应用程序所做的是将应用程序作为其域中的目录托管。比如说

如果您想使用Javascript SDK,这基本上是您的选择

如果要使用服务器端技术,可以让用户授权应用程序,同时请求在用户脱机时访问用户数据的权限。在这种情况下,您将收到一个非到期(或长到期)身份验证令牌,您可以使用该令牌从服务器代表用户进行Graph API调用。对于某些东西,您可以获取应用程序身份验证令牌(较短且不特定于用户)来调用图形


Rotem

“为每个客户创建一个新的应用程序不是一个选项。”不过,我认为这正是Facebook所期望的工作方式:您可以为每个客户的web应用程序授予单独访问您帐户的权限,因此您需要单独的应用程序ID。尽管除非他们将oauth回调URL限制为您在安装应用程序时指定的域,否则它可能只作为一个应用程序工作?我怀疑这可能是唯一的选项。看起来唯一的方法就是为我们的内部应用程序编写一个连接服务。只是让事情变得更具挑战性;)