仅在facebook画布上提供页面

时间:2012-05-04 16:09:24

标签: c# asp.net-mvc-3 facebook-c#-sdk facebook-canvas

我有一个正在处理的Facebook应用程序。

只有在IndexController上我才使用CanvasAuthorize来对Facebook进行授权,并且由于重定向,我想从其他所有页面中避免它。

这是发生了什么:我有IndexController,它有一个我用[CanvasAuthorize]装饰的Index动作。然后将facebook用户与令牌一起存储在会话中。所以在其他页面中我不需要Canvas授权。

当我使用Visual Studio进行调试时,如果我访问除Index之外的页面,它不会将我重定向到facebook应用程序。但它显示localhost:port。我怎么能强制执行,任何人都试图看到任何页面将被重定向到facebook.com/appname。

感谢。

1 个答案:

答案 0 :(得分:1)

您是否想要将用户重定向到IndexController,如果他们没有登录Facebook或他们想要使用您的应用程序?

如果我理解正确,您的indexController就是在Facebook上验证您的用户的人。验证后可以访问其他页面。

您的Facebook应用是iFrame应用吗?如果是这样,那么你需要一个Javascript,它将你重定向到indexController或直接或Apps.Facebook.con / YourApp。

 <script>
 if (top == self)
 {
      top.window.location = '//apps.facebook.com/yourApp';
 }
</script>