Проблема с аутентификацией C # Facebook Пример - PullRequest
0 голосов
/ 01 марта 2011

Сначала позвольте мне извиниться за недостаток знаний по этому предмету, но я надеюсь создать это!

У меня много трудностей с API Facebook C #. Я пытаюсь использовать образец, включенный в загрузку, «CSPASPNETWebsite». Я добавил свой идентификатор приложения и секрет в файл конфигурации и могу запустить сайт. Я перехожу на страницу входа и нажимаю кнопку Facebook, а затем подтверждаю, что хочу разрешить приложению получать доступ к моим данным. Однако после этого я никогда не получаю положительного результата при аутентификации.

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

Спасибо за чтение и заранее спасибо за любые ответы.

РЕДАКТИРОВАТЬ: я должен также отметить, что я занимаюсь разработкой на местном уровне, используя Visual Studio 2010 и SDK версии 5.0.3 (бета-версия). У меня есть подозрение, что мои проблемы могут быть связаны с проблемой файлов cookie, упомянутых здесь , однако я не могу получить доступ к IIS, чтобы попробовать их предложение

1 Ответ

0 голосов
/ 01 марта 2011

Роб правильно указал, что мое мнение было неверным. На самом деле я попытался немного поиграть с примером, который он упоминает, и обнаружил, что происходит странное перемещение по одной и той же странице в разных браузерах. Если я запускаю образец и просматриваю его по Google Chrome, он работает как положено. Просмотр его по т. Е. 8 не работает.

Перемещение кнопки Fb: после инициализации скрипта, в которой он работает, т. Е. Тоже 8.

<asp:Content ID="BodyContent" runat="server" ContentPlaceHolderID="MainContent">
    <h2>
        Log In
    </h2>

    <div id="fb-root">
    </div>
    <script src="http://connect.facebook.net/en_US/all.js"></script>
    <script>
        FB.init({ appId: '<%: Facebook.FacebookContext.Current.AppId %>', status: true, cookie: true, xfbml: true });
        FB.Event.subscribe('auth.sessionChange', function (response) {
            if (response.session) {
                // A user has logged in, and a new cookie has been saved
                alert("right");
                window.location.reload();
            } else {
                alert("wrong");
                // The user has logged out, and the cookie has been cleared
            }
        });
    </script>
    <p>
        <fb:login-button></fb:login-button>
    </p>
</asp:Content>

Мой оригинальный ответ: Я верю, что твои проблемы не твоя вина. Похоже, эти примеры устарели. Тот, который вы упоминаете, построен на лучших классах, удаленных из последней версии SDK. В последнее время SDK был полностью изменен, и примеры кода не обновляются. Вы можете увидеть здесь, для того, о котором вы упоминаете, сколько изменений было сделано:

http://facebooksdk.codeplex.com/SourceControl/list/changesets

например

  • обновлен CSASPNETWebsiteregistrationForm для использования Request.GetFacebookSignedRequest () Метод
  • CSASPNETВеб-сайт для использования FacebookAuthorizer вместо Authorizer

Если вы хотите, чтобы этот пример работал, я думаю, вам следует удалить ссылки на последнюю сборку sdk и сослаться на старую.

Я не рекомендую это.

...