app.facebook.com/app_name/-单击“www.facebook.com/app”后重定向到外部url;转到应用程序“;

app.facebook.com/app_name/-单击“www.facebook.com/app”后重定向到外部url;转到应用程序“;,facebook,facebook-graph-api,facebook-apps,facebook-canvas,klout,Facebook,Facebook Graph Api,Facebook Apps,Facebook Canvas,Klout,我知道有一种方法可以在画布应用程序的iframe中使用javascript将页面重定向到外部url。但是有没有其他方法可以让用户在授权应用程序后立即直接重定向到外部url 我知道这是可能的,因为Facebook上的一个著名应用程序klout就是这么做的。http://apps.facebook.com/klout__/ 重定向到 一旦用户 还记得我收到Facebook朋友的邀请请求吗?当我单击邀请通知并授权应用程序时,它会重定向到外部url。你知道这是怎么做到的吗?我认为Facebook的政策也

我知道有一种方法可以在画布应用程序的iframe中使用javascript将页面重定向到外部url。但是有没有其他方法可以让用户在授权应用程序后立即直接重定向到外部url

我知道这是可能的,因为Facebook上的一个著名应用程序klout就是这么做的。

http://apps.facebook.com/klout__/

重定向到

一旦用户


还记得我收到Facebook朋友的邀请请求吗?当我单击邀请通知并授权应用程序时,它会重定向到外部url。你知道这是怎么做到的吗?我认为Facebook的政策也不鼓励这样做?

Facebook希望确保与之交互的服务器与应用程序设置中设置的域相同

在klout示例中,您给出了他们所做的是添加应用程序域,这是在应用程序设置中完成的,但是您可以在其中添加的域有一个限制。 例如,如果设置中的站点url设置为“www.example.com”,则可以将“examlpe.com”或“sub.example.com”添加到应用程序域。 但如果您尝试添加“www.example2.com”,您将得到:

错误

example2.com必须来自您的网站URL或移动网站 网址


编辑 对不起,我没听懂你的意思

如果只想将用户重定向到主窗口中的url,则可以使用如下javascript:

top.location.href = "http://www.example.com";
我之前提到的是能够将“www.example.com/”作为站点url(在设置中),并且仍然将“sub.example.com”与重定向uri等一起使用


第二版 忘了提一下: 在《公约》中指出:

十三,。你在Facebook上的画布或页面标签应用程序的主要目的绝不是简单地将用户重定向出Facebook体验 并转移到外部站点


因此,您不应该将用户重定向出facebook。

实际上,我问的是如何将应用程序重定向到我的外部url?当我在“设置”选项卡中启用iframe画布应用程序时?比如克洛特是怎么做的?我不明白你要说什么?你能解释一下吗?对不起,我完全误解了你的意思。。我编辑了我的答案,希望这次我能理解你。这是我真正期望的。谢谢你的回答。这在facebook政策方面合法吗?还有什么办法可以通过更改应用程序中的设置来重定向页面吗?你是对的,我忘了提到这一部分。。。再次编辑我的答案,以便其他人在遇到此问题时看到。他们的做法不同,他们只是将自己的url指定为“重定向url”,而不是画布url(apps.facebook.com/klout)。至于隐私问题,我认为这是对隐私权的侵犯,我见过其他应用程序这样做,我猜测如果用户选择,facebook可能会阻止这些应用程序,基本上这是在冒险(我认为),我不知道facebook实际执行了多少。