我使用parse-ruby-client gem来创建适用于我的Parse数据库的应用程序的Web版本。我希望用户登录,但目前如果身份验证失败,我收到错误:
Parse::ParseProtocolError in UsersController#authenticate
101: invalid login parameters
这是我尝试过的,但是if语句并没有这样做:
user = Parse::User.authenticate(params[:username], params[:password])
if user
# Save new session, redirect, etc.
else
# redirect back to login form and try again
end
如果登录参数与现有用户不匹配,则应用程序崩溃。如何验证authenticate方法返回的内容?
答案 0 :(得分:2)
根据给出的信息,您使用的解析客户端在无法进行身份验证时会抛出错误。因此解决方案是捕获错误。
def authenticate
user = Parse::User.authenticate(params[:username], params[:password])
# Save new session, redirect, etc.
rescue Parse::ParseProtocolError
# redirect back to login form and try again
end