###swiftからmysqlにダイジェストのパスワードを保存する
swiftとrailsを連携して、アプリを作っていたところ、ダイジェストにしたパスワードをmysqlに保存することができませんでした。
rails g scaffold user name:string email:string password_digest:string
上記で雛形を作り、user.rbに下記を追加し、
has_secure_password
bcrypt
のコメントアウトを外し、bundle installを実行しました。
そして、下記のコードでMySQLにデータを保存しようとしたのですが、うまく保存できませんでした。
lang
1 2func createUser(success: @escaping (Void) -> Void, failure: @escaping (NSError?) -> Void) { 3 4 let params: [String: AnyObject] = [ 5 6 "name": self.name! as AnyObject, 7 "email": self.email! as AnyObject, 8 "password": self.password! as AnyObject 9 10 ] // params 11 12 13 14 let url = URL(string: "http://localhost:3000/users.json")! 15 16 Alamofire.request(url, method: .post, parameters: params, encoding: JSONEncoding.default).response { response in 17 18 if let error = response.error { 19 20 print(error) 21 22 return 23 24 } // if let error 25 26 success() 27 28 return 29 30 } // Alamofire.request 31 32 } // createUser 33 34
もう一度雛形を作り直し、
rails g scaffold user name:string email:string password:string
とし、実行してみたところ、うまく保存できたので、おそらくpassword_digest
の部分が原因なのではないかと考えています。
解決方法がわかる方がいらっしゃいましたら、教えていただけると嬉しいです。
よろしくお願いいたします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/04/09 02:25