Recuperar token de acesso usando a API Javascript

Este é um acompanhamento do tópico:Passando a solicitação_assinada juntamente com a chamada AJAX para um ActionMethod decorado com CanvasAuthorize

Desde que eu não consegui que o request_request fosse nulo, pensei em autenticar o usuário no lado do cliente e depois enviar o token de acesso ao lado do servidor (ASP.NET MVC) junto com a chamada AJAX. Infelizmente, também não consigo fazer isso funcionar! Aqui está o meu código Javascript (que obtive da documentação):

function postOnFacebook(msg, itemLink, pic, itemTitle, signedReq) {
    var siteUrl = 'http://www.localhost:2732';

    var appID = 193005690721590;
     if (window.location.hash.length == 0) {
       var path = 'https://www.facebook.com/dialog/oauth?';
       var queryParams = ['client_id=' + appID,
         'redirect_uri=' + window.location,
         'response_type=token',
         'scope=offline_access'];
       var query = queryParams.join('&');
       var url = path + query;
       window.open(url);
     } else {
       var accessToken = window.location.hash.substring(1);   
       var path = "https://graph.facebook.com/me?";
       var queryParams = [accessToken];
       var query = queryParams.join('&');
       var url = path + query;

   // use jsonp to call the graph
       var script = document.createElement('script');
       script.src = url;
       document.body.appendChild(script);   
     }

    $.ajax({
        url: '/Facebook/Share',
        data: {
            'message': msg,
            'link': siteUrl + itemLink,
            'picture': siteUrl + pic,
            'name' : itemTitle,
            'accessToken': accessToken
        },
        type: 'get',
        success: function(data) {
            if(data.result == "success") {
                alert("item was posted on facebook");
            }
        }
    });
}

E este é o meu código do servidor:

    public ActionResult Share(string message, string link, string picture, string name, string accessToken)
    {
        if (FacebookWebContext.Current.Session == null)
            return RedirectToAction("Login");

        var fb = new FacebookWebClient(accessToken);
        var postArgs = new Dictionary<string, string>();
        postArgs["message"] = message;
        postArgs["link"] = link;
        postArgs["picture"] = picture;
        postArgs["name"] = name;

        fb.Post("/me/feed", postArgs);
        return Json(new {result = "success"}, JsonRequestBehavior.AllowGet);
    }
}

ATUALIZAR

Eu tenteiist mas não funcionou para mim. Quando clico no botão pela primeira vez, ele me redireciona para a página de login do FB e depois volta para a página inicial do meu site. Depois disso, tudo o que faz é redirecionar e voltar à página inicial imediatamente. Nada é publicado.

Alguma sugestão

questionAnswers(1)

yourAnswerToTheQuestion