Попытка открыть Запрос на разрешение во всплывающем окне - PullRequest
0 голосов
/ 01 мая 2011

Я использую Facebook C # SDK версии 5.0.10.При входе в систему я не понимаю, почему интерфейс «Запрос на разрешение» открывается на вкладке, а не в новом всплывающем окне.

Вот мой код:

var parameters = new Dictionary<string, object>
{
   { "response_type", "token" },
   { "display", "popup" },
   { "state", returnUrl },
   { "scope", scope.ToString() },
};

[...]

var loginUri = oAuthClient.GetLoginUrl(parameters);

У кого-нибудь есть идея?

1 Ответ

0 голосов
/ 04 мая 2011

Я также использую C # SDK 5.0.10.Я предлагаю скачать образцы (FacebookSDK-5.0.10.0-41e55d6506e.src.zip) и проверить выборку «CSASPNETFacebookApp».

Я использовал ту же технику из этого образца, и для меня разрешения неоткрыть в новой вкладке или в новом всплывающем окне, но еще лучше: на той же странице.Когда вы предоставите разрешения, вы будете автоматически перенаправлены на страницу приложения, к которой вы пытались получить доступ.Очень практичноС помощью нескольких строк кода вы можете заставить аутентификацию работать.

Для перенаправления убедитесь, что в файле web.config есть обработчик:

<httpHandlers>
  <add verb="*" path="facebookredirect.axd" type="Facebook.Web.FacebookAppRedirectHttpHandler, Facebook.Web"/>
</httpHandlers>

Если вы хотите всплывающее окно,тогда вам нужно использовать fbml (на странице html / aspx):

<fb:login-button onlogin="document.location.href=document.location.href;" perms="publish_stream">Grant Permissions</fb:login-button>

Когда вы нажимаете кнопку «Предоставить разрешения», открывается всплывающее окно с запросом разрешения.

Надеюсьэто помогает.

...