Facebook 希望确保与其交互的服务器与应用程序设置中设置的域相同。
在 klout 示例中,您给出的他们所做的是添加一个在应用程序设置中完成的应用程序域,但是您可以在那里添加的域是有限的。例如,如果您在设置中的站点 URL 设置为“www.example.com”,那么您可以将“examlpe.com”或“sub.example.com”添加到应用程序域。但是,如果您尝试添加“www.example2.com”,您会得到:
错误
example2.com 必须从您的站点 URL 或您的移动 Web URL 派生。
编辑
对不起,我没有正确理解你。
如果您只想将用户重定向到主窗口中的 url,那么您可以像这样使用 javascript:
top.location.href = "http://www.example.com";
我之前指的是能够将“www.example.com/”作为站点 url(在设置中)并且仍然使用带有 redirect_uri 等的“sub.example.com”。
第二次编辑
忘了提及这一点:在Facebook 平台政策中,它指出:
13. Facebook 上的 Canvas 或 Page Tab 应用程序的主要目的不能是简单地将用户从 Facebook 体验重定向到外部站点
因此,您不应该将用户重定向到 Facebook 之外。