Аз съм нов в рубин и релси и досега успяхда настроите управлението на потребителите, използвайки устройството. В момента се опитвам да интегрирам поддръжка за мобилни приложения за Android и iOS. Досега е възможно те да се логнат и да излязат и да получат маркер за удостоверяване. Но освен това бих искал и те да могат да се регистрират.
Сега, доколкото разбирам, трябва да правя пост
http://localhost:3000/users/sign_up
Как изглежда тази публикация? И как мога да получа JSON отговор? Намерих това на Stackoverflow.
"utf8=✓&authenticity_token=n5vXMnlzrXefnKQEV4SmVM8cFdHDCUxMYWEBMHp9fDw%3D&user[email]=asd%40fasd.org&user[password]=321&user[password_confirmation]=1233&commit=Sign+up"
За съжаление това не работи - получавамсъобщението "Bad request". Аз също имам няколко въпроса за този пример. За какво се използва аутентичността? Как да го получа? Предполагам, че това не е усъвършенстване на автентификацията на маркера, тъй като потребителят дори не е в състояние да го направи в този момент.
Също така, след успешен вход искампакет „съобщение за успешна регистрация“ с генериран токен за автентификация. Така че предполагам, че трябва по някакъв начин да разширя съществуващия контролер за регистрация.
Благодаря много предварително!
Отговори:
4 за отговор № 1Devise вече разполага с цялата тази настройка. На базата на пътя ви за регистрация, правя заключението, че сте включили Devise http://localhost:3000/users
, Devise включва всички контролери и изгледи, които са необходими, включително формуляра за влизане, формуляра за регистрация, формуляра за потвърждение на имейла и формулярите за нулиране на паролата.
GET http://localhost:3000/users/sign_up
всъщност е форма, в която потребителите се регистрират. Формулярът на тази страница ще се изпрати до http://localhost:3000/users/
, която отива при регистрационния контролер на Devise.
Ако приемем, че вече няма действие или изглед /users/sign_up
, регистрационният формуляр трябва да е там, проверете дали е там (ако приемете, че сте настроили devise_for
правилно routes.rb
файл).