2011-10-18 178 views
0

我正在尝试为我的MVC 3应用程序创建一个自定义授权属性。我知道有一个默认的FacebookAutorize属性用于检查用户是否已登录。我要创建自定义属性的原因是用户可以使用Facebook创建帐户,也可以不使用(默认成员资格)Facebook。Facebook的自定义授权属性

现在,当用户登录到Facebook我想获得连接成员帐户,并调用FormsAuthentication.SetAuthCookie方法登录。

当我在VS2010(F5)中运行我的应用程序时,用户没有登录,所以你得到登录页面。当我点击登录按钮并重定向到homecontroller索引操作时,我在自定义属性中看到FacebookWebContext.Current.IsAuthenticated()方法是真实的。 关闭浏览器并在VS中再次点击F5后,网站再次导航到homecontroller索引。在那一刻,自定义授权再次被调用,我看到FacebookWebContext.Current.IsAuthenticated()返回false。

为什么它是假的?我已经被认证了吗?

感谢

回答

0

下载最新的源代码和校验 “CS-AspNetMvc3-WithoutJsSdk.sln” 样品,其演示了如何使用FormsAuthentication和Facebook的OAuth。