0

認証に authlogic を使用する Rails プロジェクトを開発しています。そして、私は Flex で実現されたそのプロジェクトの一部を持っており、ユーザーがログインしているかどうかにかかわらず、ユーザーを認証する方法を知る必要があります。

という Web サービスをセットアップし、UserSessionServiceログインしているユーザーを取得しようとしましたが、機能しません。で取得しようとするとUserSession.find、結果として # が返されます (したがって、これは常に true です)。

UserSessionService.rb は次のとおりです。

require 'weborb/context'
require 'rbconfig'

class UserSessionService
  def login
    UserSession.find
  end
end

UserSessionServiceからクラスを拡張しようとしましたAuthlogic::Session::Baseが、それも機能しません。

4

2 に答える 2

1

UserSessions Controller の関数にアクセスする Flex の HTTPService を追加して作成しました。詳細については、 http://blog.sketchit.de/2009/12/flex-mit-ruby-on-rails-authlogic-authenitifizieren/を参照してください(申し訳ありませんが、ドイツ語のみ)

あなたの助けをthx!タクシー

于 2009-12-10T16:48:59.520 に答える
0

私はFlexに精通していませんが、リモートオーセンティケーターを探しているようです。ここにいくつかのアイデアがあります:

  1. ユーザーがRails側で「ログイン」できることを確認してください。そうすれば、そのすべての機能が機能します。http://github.com/binarylogic/authlogic_exampleから始めることをお勧めします。これは、非常に良い出発点です。

  2. #logged_inという1つのアクションで「TestController」を作成します。これは、ログインしているかどうかに基づいて「yes」または「no」を出力するだけです。次に、ブラウザでそれをヒットします-http:// localhost:3000 / test / logged_in、そしてそれが何を言っているかを見てください。次に、Flexアプリで同じことを試すことができます。

    class TestController < ApplicationController
      def logged_in
        render :text => current_user ? 'yes' : 'no'
      end
    end
    
  3. アプリにデバッガーを配置して、ログインしているかどうかを確認し、ログインしていない理由を見つけます。これは通常、Cookieに関連しています。Railsでデバッグする方法については、 http: //guides.rubyonrails.org/debugging_rails_applications.htmlを参照してください。

どうなるか教えてください!

于 2009-12-09T23:28:25.143 に答える