Shared Preference Swift 4 - iOS - уникальный идентификатор пользователя Alamofire - PullRequest
0 голосов
/ 21 мая 2018

В моем проекте объявлений есть страница регистрации пользователя и идентификатор пользователя, сгенерированный в php, поэтому в этом конкретном идентификаторе пользователя все остальные данные конкретного пользователя необходимо сохранить.Я хотел бы поделиться моими быстрыми кодами для регистрации и быстрой формой данных, чтобы сохранить в этом конкретном идентификаторе пользователя.Но регистрационный идентификатор пользователя успешно сохраняется, а данные, введенные в форму данных, не сохраняются в уникальном идентификаторе пользователя.Пожалуйста, помогите мне исправить это ...

Страница регистрации swift

 let parameters: Parameters=[

        "user_name":nameTextField.text!,
        "user_email":emailTextField.text!,
        "user_mobile":mobileNumb.text!,
        "password":passwordTextField.text!
    ]
          //Sending http post request
    Alamofire.request("https://alot.ae/api/user_reg.php", 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 defaults: UserDefaults = UserDefaults.standard
                //This class variable needs to be defined every class where you set or fetch values from NSUserDefaults
                defaults.setValue("password", forKey: "user_id")
                defaults.synchronize()
                //Call this when you're done editing the defaults. It saves you

            }}

И мой swift-код для другой формы, которая должна сохранять данные в этом конкретном идентификаторе пользователя

 //creating parameters for the post request
    let parameters: Parameters=[

        "full_name":profN.text!,
        "position":position.text!,
        "email":emailCompa.text!,
        "phone_number":numComP.text!

    ]
    //Sending http post request
    Alamofire.request(URL_USER_EMPLOYER_PROFILE, 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 defaults = UserDefaults.standard
                defaults.set("URL_USER_EMPLOYER_PROFILE", forKey: "user")

            }
    }

1 Ответ

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

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

extension UserDefaults{

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

}

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

//creating parameters for the post request
        let parameters: Parameters=[

            "full_name":profN.text!,
            "position":position.text!,
            "email":emailCompa.text!,
            "phone_number":numComP.text!,
             "user_id" : AuthService.instance.userId ?? ""
        ]


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

        //    getting the json value from the server
               if let result = response.result.value {
                   UserDefaults.standard.value(forKey: "user_id")
                 //  converting it as NSDictionary
                   let jsonData = result as! NSDictionary

                let defaults: UserDefaults = UserDefaults.standard

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

                                               }
       }


        let employer = self.storyboard?.instantiateViewController(withIdentifier: "employer") as! EmployerViewController

        self.present(employer, animated: true)
      }  
...