我使用Facebook C#SDK 5.0.8完成了“ASP.NET MVC 3网站入门”。一切正常。
在此之后如何向用户请求额外的权限?
当我[Authorize(Permissions = "offline_access")]
时,我得到'System.Web.Mvc.AuthorizeAttribute'不包含'权限'错误的定义。
如果我使用[FacebookAuthorize(Permissions = "offline_access")]
,页面会重定向到自己而不会进入Facebook登录页面。
请帮忙!
由于
答案 0 :(得分:4)
我知道了!
这是我在“LogOn”操作下需要做的事情,以请求额外的权限:
var loginUri = oAuthClient.GetLoginUrl(new Dictionary<string, object> { { "state", returnUrl }, { "scope", "offline_access" } });
答案 1 :(得分:0)
因此Authorize属性不是Facebook C#SDK的一部分。该示例向您展示如何结合Forms授权使用Facebook授权。 Authorize属性不包含名为permission的属性,也不能用于授权Facebook,它使用您当前的ASP.NET成员资格提供程序检查权限。
关于FacebookAuthorize属性不起作用,这是因为您无法将两个场景混合在一起。基本上,您阅读的教程向您展示了如何在不使用Javascript SDK等的情况下以最简单的方式进行授权。您不应在该教程中使用Facebook.Web或Facebook.Web.Mvc中的任何内容,因为它们不适合工作使用表单身份验证
我建议看一些其他样本。 Y他们将帮助您开始使用一些更常见的场景,例如要求其他权限。