2016-03-22 8 views
0

このエラーは修正されていません。私を助けてください。コール中の余分な引数 'error'は固定されていません

@IBAction func LoginButtonTapped(sender: AnyObject) { 
    let email = UserName.text 
    let password = PasswordField.text 

    if(password!.isEmpty || email!.isEmpty) { 
     return 
    } 

    let myurl = NSURL(string:"some url") 
    let request = NSMutableURLRequest(URL: myurl!) 
    request.HTTPMethod = "POST" 

    let poststring = "email=\(email)&password=\(password)" 
    request.HTTPBody = poststring.dataUsingEncoding(NSUTF8StringEncoding) 
    let task = NSURLSession.sharedSession().dataTaskWithRequest(request) { 
     data, response, error in 
     if error != nil { 
      print("error=\(error)") 
      return 
     } 

     var err : NSError! 
     var json = NSJSONSerialization.JSONObjectWithData(data, options: .MutableContainers, error: &err) as NSDictionary 

     if let parseJSON = json { 
      var resultValue:String = parseJSON["status"] as String 
      print("result: \(resultValue)") 
      if (resultValue=="success") { 
       NSUserDefaults.standardUserDefaults().setBool(true, forKey: "isUserLoggedIn") 
       NSUserDefaults.standardUserDefaults().synchronize() 
       self.dismissViewControllerAnimated(true, completion: nil) 
      } 
     } 
    } 

    task.resume() 
} 

このコードを修正して追加することがわかりましたが、私はiOS Swift 2.0を初めて使用しています。それをどう扱うかわからない。

do { 
    if let json = try NSJSONSerialization.JSONObjectWithData(data, options: []) as? NSDictionary { 
     print(jsonResult) 
    } 
} catch let error as NSError { 
    print(error.localizedDescription) 
} 

私のエラーの問題を修正するためにこのコードを追加することはできますか?

答えて

1

あなたは、ただ、これで

​​3210

を交換するエラーを気にしない場合:

var json = try? NSJSONSerialization.JSONObjectWithData(data!, options: .MutableContainers) as! NSDictionary 

か、あなたのコードは次のようになります。

@IBAction func LoginButtonTapped(sender: AnyObject) { 

    let email = "" 
    let password = "" 

    if(password.isEmpty || email.isEmpty) { 

     return 
    } 

    let myurl = NSURL(string:"some url") 
    let request = NSMutableURLRequest(URL: myurl!) 
    request.HTTPMethod = "POST" 

    let poststring = "email=\(email)&password=\(password)" 
    request.HTTPBody = poststring.dataUsingEncoding(NSUTF8StringEncoding) 
    let task = NSURLSession.sharedSession().dataTaskWithRequest(request) { 
     data, response, error in 

     do { 
      if let json = try NSJSONSerialization.JSONObjectWithData(data!, options: []) as? NSDictionary { 

       let resultValue:String = json["status"] as! String 
       print("result: \(resultValue)") 
       if (resultValue=="success") 
       { 
        NSUserDefaults.standardUserDefaults().setBool(true, forKey: "isUserLoggedIn") 
        NSUserDefaults.standardUserDefaults().synchronize() 
        self.dismissViewControllerAnimated(true, completion: nil) 
       } 
      } 
     } catch let error as NSError { 
      print(error.localizedDescription) 
     } 

    } 
    task.resume() 
} 
関連する問題