Авторизуйтесь с разрешениями - PullRequest
2 голосов
/ 27 марта 2011

Я сделал «Начало работы с веб-сайтом ASP.NET MVC 3», используя Facebook C # SDK 5.0.8. Все отлично работает

Как после этого запросить дополнительные разрешения у пользователя?

Когда я делаю [Authorize(Permissions = "offline_access")], я получаю, что 'System.Web.Mvc.AuthorizeAttribute' не содержит определения для ошибки 'Permissions'.

Если я использую [FacebookAuthorize(Permissions = "offline_access")], страница перенаправляется на себя, не заходя на страницу входа в Facebook.

Пожалуйста, помогите!

Спасибо

Ответы [ 2 ]

4 голосов
/ 28 марта 2011

Я понял!

Это то, что мне нужно сделать в действии "LogOn", чтобы запросить дополнительное разрешение:

var loginUri = oAuthClient.GetLoginUrl(new Dictionary<string, object> { { "state", returnUrl }, { "scope", "offline_access" } });
0 голосов
/ 28 марта 2011

Таким образом, атрибут Authorize не является частью SDK Facebook C #. В этом примере показано, как использовать авторизацию Facebook в сочетании с авторизацией с помощью форм. Атрибут Authorize не содержит свойство с именем Разрешение и не может использоваться для авторизации через Facebook, он проверяет разрешения с помощью вашего текущего поставщика членства ASP.NET.

Относительно того, что атрибут FacebookAuthorize не работает, потому что вы не можете смешивать два сценария вместе. По сути, учебник, который вы прочитали, показывает вам, как выполнить авторизацию самым простым способом без использования Javascript SDK и т. Д. В этом учебнике не следует ничего использовать в Facebook.Web или Facebook.Web.Mvc, поскольку они не предназначены для работы. с проверкой подлинности с помощью форм.

Я бы посоветовал взглянуть на некоторые другие образцы. Y Они помогут вам начать работу с некоторыми из наиболее распространенных сценариев, таких как запрос дополнительных разрешений.

...