J'ai effectué un appel API pour consigner mes utilisateurs dans une application. J'utilise Alamofire et SwiftyJSON. appel API fonctionne bien et je reçois un fichier JSON
comme celui-ci:Impossible de créer un objet avec la réponse JSON à partir de l'appel API
{
"code": 200,
"message": "OK",
"data": {
"user_id": 1,
"user_email": "test",
"user_username": "kk1",
}
}
Pour enregistrer les informations utilisateur dans UserDefault
, je veux créer mon objet utilisateur avec cette réponse JSON
. Voici le modèle
class LFUser: NSObject {
var user_id: Int?
var user_email: String?
var user_username: String?
init(dict: [String: AnyObject]){
super.init()
user_id = dict["user_id"] as? Int
user_email = dict["user_email"] as? String
user_username = dict["user_username"] as? String
}
}
Voici la partie de la fonction de connexion lorsque l'appel API et le objectis créé:
func login(userEmail: String, userPassword: String, finished: @escaping(_ status:String,_ data: LFUser?)->()) {
if let value = response.result.value {
let dict = JSON(value)
let code = dict["code"].intValue
let message = dict["message"].stringValue
if let data = dict["data"].dictionary {
print(data)
let user = LFUser(dict: data as [String : AnyObject])
print(user.user_email)
finished("Success", user)
}
}
L'impression (données) fonctionne bien, mais il y a un problème lors de la création objet et l'impression (user.user_email) afficher nil.
faire quelque chose comme ce lien https://stackoverflow.com/questions/2315948/how-to-store-custom-objects-in-nsuserdefaults –
ty pour cela, mais peut-être cela ne résoudra pas mon problème car je ne peux pas créer correctement l'objet correctement? –
peut-être que c'est la prochaine étape –