1
remote: "/valid_password.json"
を使用して検証にjQuery検証プラグインを使用して、送信されたパスワードが正しいかどうかを確認します。問題はサーバー上でパスワードが(Authlogicを使用して)暗号化されているため、パスワードパラメータと保存されたパスワードを比較すると同じではないということです。 JQuery検証プラグインを使用してパスワードを検証するにはどうすればよいですか?ここauthlogicとjQuery検証プラグインでパスワードを検証する方法は?
は、コントローラ内のコードである:
def valid_password
username = params[:user_session][:username]
password = params[:user_session][:password]
@user = User.find_by_username(username)
if @user.password == password
@password_ok = true
end
respond_to do |format|
format.json { render :json => @password_ok ? "true" : "false"}
end
end
編集:検索および読み出しの後、私はこの試みた:(まだ成功して)を
def valid_password
username = params[:username]
password = params[:user_session][:password]
@user = User.find_by_username(username)
puts "TEST" + @user.crypted_password
@password = Authlogic::CryptoProviders::Sha512.encrypt(password)
puts "TEST" + @password
if @password == @user.crypted_password
@password_ok = true
end
respond_to do |format|
format.json { render :json => @password_ok ? "true" : "false"}
end
end
2つのputs
方法が異なる与えます結果。私は暗号化の権利を得るために、保存されたpassword_saltを使うべきだと思いますが、どうすればいいのか分かりません。もともと私は "username"に間違ったパラメータを使用しましたが、これは修正されました。
あなたがAuthLogicで送信され、その後、暗号化されたバージョンを比較しましたパスワードを暗号化しようとしないのはなぜ? – jmort253
どうすればいいですか? –