2016-09-29 4 views
0

AFNetworking 매개 변수를 게시 할 때 NSMutableDictionary 때이 요청은 성공합니다.NSURLSession에서 HTTPBody는 NSData 여야합니다?

그러나 NSURLSession을 사용하면 self.request! .HTTPBody가 NSData 여야 요청이 실패합니다.

NSURLSession을 사용하여 요청을 성공적으로 수행하려면 어떻게해야합니까?

postDict[@"jgId"] = "1000000000"; 
[manager GET:SELECTDEPART parameters:postDict success:^(AFHTTPRequestOperation *operation, id responseObject) { 

} failure:^(AFHTTPRequestOperation *operation, NSError *error) { 
    NSLog(@"-----%@", error); 
}]; 

//use NSData 

NSJSONSerialization.dataWithJSONObject(postDict, options: NSJSONWritingOptions.PrettyPrinted) 

도와주세요.

답변

0
let params = ["jgId": "1000000000"] 
let data = try? JSONSerialization.data(withJSONObject: params, options: [JSONSerialization.WritingOptions(rawValue: 0)]) 

var request = URLRequest(url: URL(string: "https://my-url.com")!, cachePolicy: .returnCacheDataElseLoad, timeoutInterval: 30) 
request.httpMethod = "POST" 
request.httpBody = data 
request.allHTTPHeaderFields = [:] 

URLSession.shared.dataTask(with: request) { (data, response, error) in 

} 
+0

GET 요청을하려면 –

0

GET 메서드를 사용하여 서버에서 데이터를 요청하면 매개 변수가 요청 HTTPBody 데이터로 전송되지 않습니다. 귀하의 매개 변수는 요청 URL을 통해 간단합니다.

질문의 기본 URL은 SELECTDEPART이고 매개 변수는 postDict입니다. 다음 코드를 사용 NSURLSession 영업 이익이 확대 개체 C. 작업 때문에 당신은하지 신속한에서 목표 C에 답을 줄 필요가 parameters