我正在以编程方式为基于用户登录的身份验证应用程序,该应用程序使用设计 gem 但无法成功。我知道对于基于设计的登录,我需要传递用户电子邮件和密码。我需要传递任何其他参数吗?在浏览器上,我可以使用用户电子邮件和密码登录,但我可以通过编程方式获得Unauthorized
访问权限。
虽然程序在,titanium
但我认为这并不重要,重要的是您传递给 rails 服务器的参数。
我的控制台输出 1 没有user
在钛中添加参数:
Started POST "/users/sign_in" for 192.168.0.187 at 2012-12-21 12:57:32 +0530
Processing by Devise::SessionsController#create as URL_ENCODED_FORM
Parameters: {"password"=>"[FILTERED]", "email"=>"Gjpu "}
Completed 401 Unauthorized in 1ms
user
在钛中添加参数后,我的控制台输出 2 :
Started POST "/users/sign_in" for 192.168.0.187 at 2012-12-21 13:03:19 +0530
Processing by Devise::SessionsController#create as URL_ENCODED_FORM
Parameters: {"user"=>"{password=6f278077d841b3385e06bfa99acb374f, email=gjmwtp
gj}"}
Completed 401 Unauthorized in 1ms
我的钛金属代码打到 Rails 服务器 -
loginBtn.addEventListener('click',function(e)
{
if (username.value != '' && password.value != '')
{
loginReq.open("POST","http://192.168.0.187:3000/users/sign_in");
var params = {user: { email: username.value , password: Ti.Utils.md5HexDigest(password.value)}};
//var params=JSON.parse(myparams);
loginReq.send(params);
}
else
{
alert("Email/Password are required");
}
});