Правильно обрабатывать обратный вызов Facebook для OAuth2 с помощью Facebook. NET -SDK - PullRequest
0 голосов
/ 19 февраля 2020

Я использую Facebook SDK для. NET и использую следующий код для авторизации на Facebook:

string redirectUrl = Url.Action("facebookcallback", "login", null, Request.Url.Scheme);

try
{
    var loginUrl = FacebookClient.GetLoginUrl(new
    {
        client_id = [my_id],
        redirect_uri = redirectUrl,
        scope = "email",
        display = "popup",
        response_type = "token"
    });

    return Redirect(loginUrl.OriginalString);
}
catch (Exception e)
{
    return RedirectToAction("index");
}

Как только я авторизую свое приложение на сайте facebook, я буду перенаправлен к моей функции обратного вызова, которая выглядит следующим образом:

https://localhost/path/to/facebookcallback?#access_token=[access_token]&data_access_expiration_time=[expiration_time]&expires_in=[expires_in]

Но я не могу получить доступ к access_token, потому что он отправляется с #, что делает его невидимым для серверная сторона. К сожалению.

Есть ли способ получить доступ к этому токену со стороны сервера или мне нужно получить доступ с помощью JQuery на внешнем интерфейсе и каким-то образом перенести его на мой сервер для дальнейшей обработки?

...