Сохранить данные в user_id iOS с помощью Alamofire - PullRequest
0 голосов
/ 26 июня 2018

Как я могу хранить все формы данных в определенном идентификаторе пользователя? У меня есть страница регистрации, поэтому у каждого пользователя будет свой user_id. Тогда у меня есть формы, чтобы заполнить их основную информацию, образование и т. Д.

Например, предположим, что пользователь (человек) 'A' зарегистрировался на странице регистрации для того, чтобы "ABCD" создал случайный user_id, а для пользователя (другого человека) 'B' также зарегистрирован, так что "EFGH" user_id генерируется.

Таким образом, их данные должны храниться в определенном идентификаторе пользователя в соответствии с их зарегистрированным идентификатором пользователя (данные A 'должны храниться в «ABCD», а дальнейшая информация B должна храниться в «EFGH». Как я могу сделать это в Alamofire

Мой запрос на сообщение для Alamofire выглядит следующим образом:

 @IBAction func eduSave(_ sender: UIButton) {
   let parameters: Parameters=[

            "institute_name":univ.text!,
            "degree_name":grad.text!,
            "start_year":cityP.text!,
            "end_year":enYear.text!,
            "degree_city":proj.text!,
            "degree_country":eduCountry.text!
        ]

   //Sending http post request
        Alamofire.request(URL_USER_EDUCATION, method: .post, parameters: parameters).responseJSON
            {
                response in
                //printing response
                print(response)

                //getting the json value from the server
                if let result = response.result.value {

                    //converting it as NSDictionary
                    let jsonData = result as! NSDictionary
                      let retrievedString: String? = KeychainWrapper.standard.string(forKey: "user_id")

                }
        }

        let experience = self.storyboard?.instantiateViewController(withIdentifier: "experience") as! ExperienceViewController

        self.present(experience, animated: true)

    }

1 Ответ

0 голосов
/ 07 июля 2018

Я нашел ответ у разработчика iPhone @ Мухаммеда Ажаруддина, создав класс для пользовательских значений по умолчанию для хранения данных в user_id

extension UserDefaults{

    static let isLoggedIn = "com.xyz.AlotTest1isLoggedIn"
    static let userId = "com.xyz.AlotTest1userId"

}

И вызвать это расширение в параметрах после @IBAction

 let parameters: Parameters=[

    "institute_name":univ.text!,
    "degree_name":grad.text!,
    "start_year":cityP.text!,
    "end_year":enYear.text!,
    "degree_city":proj.text!,
    "degree_country":eduCountry.text!,
    "user_id" : AuthService.instance.userId ?? ""
]


print(parameters)

//Sending http post request
    Alamofire.request(URL_USER_EDUCATION, method: .post, parameters: parameters).responseJSON
        {
        response in
        //printing response
        print(response)

        //getting the json value from the server
        if let result = response.result.value {



            let re = UserDefaults.standard.value(forKey: "user_id") as! Array<Parameters>
            print(result)

            let defaults: UserDefaults = UserDefaults.standard

            //This class variable needs to be defined every class where you set or fetch values from NSUserDefaults



        }
}
let ViewController:UIViewController = UIStoryboard(name: "Bar", bundle: nil).instantiateViewController(withIdentifier: "experience") as UIViewController
self.present(ViewController, animated: false, completion: nil)
}
...