您好,我在将 device_token 传递给我的参数 swift 4 Xcode 9.2 时遇到问题
视图控制器
override func viewDidLoad() {
print("inside viewDidLoad ")
super.viewDidLoad()
let appDelegate = UIApplication.shared.delegate as! AppDelegate
appDelegate.viewController = self
}
func loadRequest(for deviceTokenString : String)
{
let deviceid = UIDevice.current.identifierForVendor!.uuidString
print("====== device id =======")
print(deviceid)
let testURL = URL(string: "http://www.test.com/user?device=ios&deviceid=" + deviceid + "&devicetoken=" + deviceTokenString
let testURLRequest = URLRequest(url: testURL!)
print("before load request")
print(testURL!)
RJWebview.loadRequest(testURLRequest)
}
AppDelegate -> didRegisterForRemoteNotificationsWithDeviceToken
viewController?.loadRequest(for: deviceTokenString!)
将数据发送到我正在使用此方法的 SQL 数据库
let URL_USER_REGISTER = "http://api"
let parameters: Parameters=[
"first_name":textFieldFirstName.text!,
"last_name":textFieldLastName.text!,
"username":textFieldUsername.text!,
"email":textFieldEmail.text!,
"device_token":device_token,]
Alamofire.request(URL_USER_REGISTER, 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
//displaying the message in label
self.labelMessage.text = jsonData.value(forKey: "message") as! String?
}
}
这是输出
SUCCESS: {
code = 402;
errors = {
"device_token" = (
"validation.required"
);
};
message = error;
}
应该传递 device_token 并从参数方法发送,但这里我有 2 个问题
1 - 如果我使用“device_token”:device_token,将给出此错误 Use of unresolved identifier 'device_token'
应该从 func loadRequest
2 - 如果我使用“device_token”:loadRequest,将在输出中返回这个
这是输出
SUCCESS: {
code = 200;
"device_token" ="(FUNCTION)"
}
请问有什么更好的方法吗??