Я вижу, что этот вопрос задан раньше, но не может найти, что кто-либо принял ответ в любом месте. Моя ошибка:
NSDebugDescription = текст JSON не начинался с массива или объекта и не позволял фрагментам не задаваться.
let myUrl = NSURL(string: "http://www.example.com/xxx.php") let request = NSMutableURLRequest(URL:myUrl!); let session = NSURLSession.sharedSession() request.HTTPMethod = "POST"; let postString = "email=\(useremail)&pass=\(userpassword)&username=\(username)" request.HTTPBody = postString.dataUsingEncoding(NSUTF8StringEncoding); let task = session.dataTaskWithRequest(request) { (data, response, error) in // if error if error != nil { print("error=\(error)") return } var json: NSDictionary? = nil do { json = try NSJSONSerialization.JSONObjectWithData(data!, options: .MutableContainers) as? NSDictionary } catch { print("error=\(error)") } 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["message"] as! String!; if(!isuserregistered) { messagetodisplay = parseJSON["message"] as! String!; }}
Я пытаюсь отправить электронную почту, передать, имя пользователя и успешно представить мое предупреждение и изменить контроллер. но я еще не попал в базу данных. Это PHP и MYSQL через url.
попробуйте изменить эту строку
json = try NSJSONSerialization.JSONObjectWithData(data!, options: .MutableContainers) as? NSDictionary
к этому
json = try NSJSONSerialization.JSONObjectWithData(data!, options: .AllowFragments) as? NSDictionary