Запуск каждого входа в систему без обновления страницы (авторизация на Facebook)

Я настроил everyauth и это выглядит довольно мило.

Прямо сейчас, как показано в этом эпизоде ​​NodeTuts, нужно перейти к http://www.example.com/auth/facebook или же http://www.example.com/auth/twitter для того, чтобы подтвердить подлинность.

Как я могу настроить everyauth разрешить мне прикрепить событие JavaScript к кнопке для запуска аутентификации?

Например, в следующем коде при нажатии кнопки внизу должно появиться окно аутентификации Facebook. Как мне это сделать с EveryAuth?

<html>
    <head>
      <title>My Facebook Login Page</title>
    </head>
    <body>
      <div id="fb-root"></div>
      <script>
        window.fbAsyncInit = function() {
          FB.init({
            appId      : 'YOUR_APP_ID',
            status     : true, 
            cookie     : true,
            xfbml      : true,
            oauth      : true,
          });
        };
        (function(d){
           var js, id = 'facebook-jssdk'; if (d.getElementById(id)) {return;}
           js = d.createElement('script'); js.id = id; js.async = true;
           js.src = "//connect.facebook.net/en_US/all.js";
           d.getElementsByTagName('head')[0].appendChild(js);
         }(document));
      </script>
      <div class="fb-login-button">Login with Facebook</div>
    </body>
</html>

1 ответ

Решение

Посмотрите на легкую библиотеку Роба Гастера: https://github.com/robrighter/easy-oauth/blob/master/lib/easy-oauth.js

Он вводит js на стороне клиента и затем обходит маршрут.

Другие вопросы по тегам