2016-06-28 8 views
1

Ich arbeitete an der Implementierung einer Drittanbieter-API mit Zertifikat und Authentifizierung. Ich habe ein Zertifikat in meinen Ressourcenordner gelegt, ich habe auch ein Passwort dafür. Für das oben genannte denke ich implementieren NSURLSession und Delegate-Methode "Didrecieve Herausforderung" fast gut funktioniert. Aber als Antwort bekomme ich nur Kopf Teile nicht Körper Bitte hilf mir was ich gemacht habe. Die Antwort vom Server sollte XML-Format sein, aber Got nur unter Teilen:So rufen Sie HTTPS-URL mit Zertifikat Authentifizierung

status code: 200, headers { 
    Connection = close; 
    "Content-Length" = 23113; 
    "Content-Type" = "text/html; charset=ISO-8859-1"; 
    Date = "Tue, 28 Jun 2016 05:26:42 GMT"; 
    Server = "Apache/2.2.15 (CentOS)"; 
} }) 

Code:

let xmlString = "<?xml version='1.0' encoding='ISO-8859-1'?><TICKETANYWHERE><COUPON VER='1.0'><TEMPLATELIST /></COUPON></TICKETANYWHERE>" 
     let xmlData = xmlString.dataUsingEncoding(NSUTF8StringEncoding, allowLossyConversion: false) 

     let request = NSMutableURLRequest(URL: NSURL(string: "My URL")!) 
     request.HTTPMethod = "POST" 
     request.HTTPBody = xmlData 
     request.addValue("text/html; charset=ISO-8859-1", forHTTPHeaderField: "Content-Type") 
     request.setValue("Apache/2.2.15 (CentOS)", forHTTPHeaderField: "Server") 
     request.addValue("23113", forHTTPHeaderField: "Content-Length") 

     struct SessionProperties { 
      static let identifier : String! = "url_session_background_download" 
     } 


     let configuration = NSURLSessionConfiguration.defaultSessionConfiguration() 
     request.timeoutInterval = 20.0 //(number as! NSTimeInterval) 

     let session = NSURLSession(configuration: configuration, delegate: self, delegateQueue: nil) 
     let task = session.dataTaskWithRequest(request) { data, response, error in 
      **print(response)** // Got Only Header Part Not Body 
     } 

     task.resume() 

Antwort

1

Ein NSHTTPURLResponse Objekt ist nicht soll Daten enthalten. Es enthält nur die Metadaten (Header usw.). Die Körperdaten befinden sich im Datenobjekt.

+0

Ja, richtig machte mich sehr dummer Fehler :) Danke +1 –