2016-03-08 2 views
0

J'ai ce code pour prendre le X-Transmission-Session-Id mais maintenant je dois renvoyer la demande avec l'en-tête mis à jour.renvoyer votre demande avec l'en-tête mis à jour Transmission dans Swift

function takeXTransmissionSessionId(){ 

    let urls = NSURL(string: "\(url)") 
    let task = NSURLSession.sharedSession().dataTaskWithURL(urls!) { (data, respornse, error) -> Void in 

     guard error == nil && data != nil else { 

      print("error=\(error!)") 

      let alertView = UIAlertController(title: "ERROR", message: "A server with the specified hostname could not be found.", preferredStyle: UIAlertControllerStyle.Alert) 
      let actionView = UIAlertAction(title: "OK", style: UIAlertActionStyle.Cancel, handler: nil) 
      alertView.addAction(actionView) 
      self.presentViewController(alertView, animated: true, completion: nil) 

      return 
     } 

     if let httpStatus = respornse as? NSHTTPURLResponse where httpStatus.statusCode != 200 { 

      let sesionID = httpStatus.allHeaderFields["X-Transmission-Session-Id"] 

      if sesionID == nil { 

       let alertView = UIAlertController(title: "ERROR", message: "The request has not been applied because it lacks valid authentication credentials for the target resource.", preferredStyle: UIAlertControllerStyle.Alert) 
       let actionView = UIAlertAction(title: "OK", style: UIAlertActionStyle.Cancel, handler: nil) 
       alertView.addAction(actionView) 
       self.presentViewController(alertView, animated: true, completion: nil) 

      }else{ 

       //print("\(respornse!)") 
       //print("\(sesionID!)") 
       self.XTransmissionSessionId = "\(sesionID!)" 

      } 

     } 

    } 

    task.resume() 

} 

Mon problème est que je bac plusieurs fois de différentes manières, mais je ne sais pas ce que je dois faire.

Merci!

Répondre

0

C'est le code pour faire ce que je dois:

request.HTTPMethod = "POST" 
    request.addValue("\(XTransmissionSessionId)", forHTTPHeaderField: "X-Transmission-Session-Id")