共享首选项 Swift 4- iOS- 唯一的 Alamofire 用户 ID
Shared Preference Swift 4- iOS- Unique Alamofire user id
在我的分类项目中,有一个用户注册页面和在 php 中生成的用户 ID,因此在该特定用户 ID 中,特定用户的所有其他数据都需要保存。我会分享我的 swift 注册代码和 swift 数据表格以保存在该特定用户 ID 中。但注册用户 ID 已成功保存,但以数据形式输入的数据未保存在唯一用户 ID 中。请帮我解决这个问题...
注册页面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 其他表单的代码,必须在该特定用户 ID 中保存数据
//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")
}
}
我通过 iPhone 开发人员 @ Muhammed Azharuddin 找到了答案,方法是为用户默认创建一个 class 以在 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)
}
在我的分类项目中,有一个用户注册页面和在 php 中生成的用户 ID,因此在该特定用户 ID 中,特定用户的所有其他数据都需要保存。我会分享我的 swift 注册代码和 swift 数据表格以保存在该特定用户 ID 中。但注册用户 ID 已成功保存,但以数据形式输入的数据未保存在唯一用户 ID 中。请帮我解决这个问题...
注册页面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 其他表单的代码,必须在该特定用户 ID 中保存数据
//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")
}
}
我通过 iPhone 开发人员 @ Muhammed Azharuddin 找到了答案,方法是为用户默认创建一个 class 以在 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)
}