1

Authlogicを使用したFacebookerの実装(authlogic_facebook_connectプラグインを使用)では、1つを除いて、すべてが正常に機能しているようです。

(Facebookポップアップで[OK]をクリックして)アプリケーションを最初に承認した後も、ログインページにとどまります。リダイレクトはありません。ただし、ログインページを更新してからもう一度[Facebook]ボタンをクリックすると、Facebookによって既に承認されているため、ポップアップは表示されません。代わりに、/ user_session(Facebookセッションによる認証用)に自動的にリダイレクトされ、すぐにダッシュボードページに移動します。予想通り。

追加情報:

Facebookを承認した直後に、最初のクリックでリダイレクトされない理由はありますか?承認後のURLはhttp:/// user_session /に設定され、authlogicのルートは適切に設定されています。

PrototypeとjQueryを試してみましたが、どちらも同じ結果になります。

Facebookで認証しようとすると、このチュートリアルWebサイトで同じ問題が発生する可能性があります。このウェブサイトは私のものではないので、自己責任で試してください:http: //facebooker.pjkh.com

ありがとう。

4

1 に答える 1

3

ここでも同じ問題があります。jqueryを使用して何もしなかった理由は、によって生成されたコードだと思います

<%= authlogic_facebook_login_button :controller => 'customer_session' %>

これは次のようなものです

  <form id='connect_to_facebook_form' method='post' action='/customer_session'>
    <input type='hidden' name='authenticity_token' value='keLV8CIfc5znsRkjhkjhkjhkjhkjh='/>
  </form>
  <script type='text/javascript' charset='utf-8'>
    function connect_to_facebook() {
      $('connect_to_facebook_form').submit();
    }
  </script>
  <fb:login-button js="prototype" onlogin="connect_to_facebook()"></fb:login-button>

フォームを送信するjqueryが間違っているはずです

$('#connect_to_facebook_form').submit();

(ええと、私は:js =>:jqueryを渡さなかったので)

しかし、私がそれを修正した場合、私はまだ得ます

1つのエラーにより、このカスタマーセッションを保存できませんでした

次のフィールドに問題がありました。

* You did not provide any details for authentication

だから正しい詳細が私が推測するフォームに注入されていません

于 2010-09-06T11:11:56.673 に答える