iOS uygulamamla kullanıcı kimlik doğrulaması için Devise çalıştıran Rails 3.1 uygulamasının tümleştirilmesi üzerinde çalışıyorum. Kullanıcının uygulamayı kaydettirmesini isterim ve daha sonra giriş yapmak için bu kimlik bilgilerini saklayabilirim. RestKit kullanmaJSON'da Devise Kullanıcısı Oluştur
, bunu: (tırmık yollarına göre) user_registration POST /users(.:format) {:action=>"create", :controller=>"devise/registrations"}
:
-(IBAction)registerUser:(id)sender {
NSDictionary *params = [NSDictionary dictionaryWithObjects:[NSArray arrayWithObjects:
self.email.text,
self.password.text,
self.confirmPassword.text,
nil]
forKeys:[NSArray arrayWithObjects:
@"email",
@"password",
@"password_confirmation",
nil]];
[[RKClient sharedClient] post:@"/users.json" params:params delegate:self];
}
/users.json
url gider. Görüşme çağrısının farklı biçimleri kabul ettiği görülüyor, dolayısıyla JSON'u kabul edeceğini kabul ediyorum. Gönderim isteğim JSON olarak serileştirildi ve gönderildi. Sunucu onu yakalıyor ve bu günlük: Ben bir 422 hatası alıyorum
Started POST "/users.json" for 129.21.84.10 at 2012-01-12 15:33:57 -0500
Processing by Devise::RegistrationsController#create as JSON
Parameters: {"password"=>"[FILTERED]", "password_confirmation"=>"[FILTERED]", "email"=>"[email protected]"}
WARNING: Can't verify CSRF token authenticity
User Load (0.9ms) SELECT "users".* FROM "users" WHERE "users"."id" = 1 LIMIT 1
(0.3ms) BEGIN
(0.2ms) COMMIT
(0.2ms) BEGIN
(0.4ms) ROLLBACK
Completed 422 Unprocessable Entity in 93ms (Views: 3.8ms | ActiveRecord: 10.2ms)
ve benim kullanıcı oluşturulmaz. IOS uygulamamın yanıtı: Response: {"email":["can't be blank"],"password":["can't be blank"]}
. Ancak şifre ve e-posta boş değil, sunucu bunları başarıyla aldı. Yani, bir şey doğru çalışmıyor ve nereye gideceğime emin değilim. JSON kullanarak nasıl kullanıcı oluşturabilirim?
Yardımlarınız için teşekkürler!
hiç bu çalışma almak mı? – Quentamia
Hayır, ancak çalışmaya gerek kalmadan devam ettim. Gelecekte buna ihtiyacım olabilir ... –