내 서버에서 JSON 데이터를 구문 분석하려고하는데 오류가 발생하여 try!
문에 충돌하여 충돌이 발생합니다. 그것은 나에게 말하고있다시도하십시오! Swift 3에서 치명적인 오류 발생 Swift 2에서 업데이트되는 문제
Code=3840 "Invalid value around character 0.
나뿐만에로 전환 될 때까지 내가 스위프트 내가 가장 긴 시간을 구문 분석 할 경우에 문제가 있고 있었다 3. 올바르게 내 코드를 업데이트하지 않았기 때문에 그것은 내 자리?
@IBAction func registerButtonTapped(_ sender: Any) {
let userEmail = userEmailTextField.text;
let userPassword = userPasswordTextField.text;
let userRepeatPassword = repeatPasswordTextField.text;
// Check for empty fields
if((userEmail?.isEmpty)! || (userPassword?.isEmpty)! || (userRepeatPassword?.isEmpty)!){
//Display alert message
displayMyAlertMessage(userMessage: "All fields are required");
return;
}
//Check if passwords matech
if(userPassword != userRepeatPassword){
// Display alert message
displayMyAlertMessage(userMessage: "Passwords do not match");
return;
}
// Send user data to server side
let myUrl = URL(string: "http://");
let request = NSMutableURLRequest(url:myUrl!);
request.httpMethod = "Post";
let postString = "email=\(userEmail)&password=\(userPassword)";
//adding the parameters to request body
request.httpBody = postString.data(using: String.Encoding.utf8);
//creating a task to send the post request
let task = URLSession.shared.dataTask(with: request as URLRequest){
data, response, error in
if error != nil{
print("error=\(error)")
return
}
//parsing the reponse
//converting response to Any
let json = try! JSONSerialization.jsonObject(with: data!, options: JSONSerialization.ReadingOptions.allowFragments) as? [String:Any]
//parsing JSON
if let parseJSON = json{
let resultValue = parseJSON["status"] as? String
print("result: \resultValue)")
var isUserRegistered:Bool = false;
if(resultValue=="Success") { isUserRegistered = true;}
var messageToDisplay:String = parseJSON["messsage"] as! String;
if(!isUserRegistered)
{
messageToDisplay = parseJSON["message"] as! String;
}
DispatchQueue.main.async {
//Display alert message with confirmation.
let myAlert = UIAlertController(title:"Alert", message:messageToDisplay, preferredStyle: UIAlertControllerStyle.alert);
let okAction = UIAlertAction(title:"ok", style:UIAlertActionStyle.default){ action in
self.dismiss(animated: true, completion:nil);
}
myAlert.addAction(okAction);
self.present(myAlert, animated:true, completion:nil);
};
}
}
task.resume()
}
도와주세요
, 감사
구문 분석하려는 json이 유효하지 않습니다! 'try! '를 사용하지 마십시오. JSONSerialization.jsonObject (...)'- 서버에 중단 시간/유지/유효한 오류가 발생하지 않는 오류가 발생하면 어떻게됩니까? 답변 : 앱이 다운됩니다 : ( – luk2302
감탄 부호가 당신을 초대합니다 : * 제발 나를 추락 시키십시오! * 오류를 포착하는 것은 당신에게 달려 있습니다 .. 당신은 너무 많은 느낌표와 물음표를 사용하고 있습니다 ... – vadian
[치명적인 오류 : 예기치 않게 찾지 옵션 값 "평균?"(http://stackoverflow.com/questions/32170456/what-does-fatal-error-unexpectedly-found-nil-while-unwrapping-an-optional-valu) (특히, 당신을 위해'try/try?/try!'에 관한 장.) – Moritz