NSURLSessionConfiguration does not accept "Content Type" in HTTPAdditionalHeaders

I am making a REST web service service call using NSURLSession. I set the content type for the web service in NSURLSessionConfiguration.HTTPAdditionalHeaders. The following code worked perfectly fine in iOS 7.0 to iOS 8.1.3. But in iOS 8.3, web service response data is returned as null bytes when the content type is specified in HTTPAdditionalHeaders.

Method 1:

NSMutableURLRequest *urlRequest = [[NSMutableURLRequest alloc] init];
NSData *postData = [dataToBeSent dataUsingEncoding:NSUTF8StringEncoding allowLossyConversion:YES];
[urlRequest setHTTPBody:postData];
[urlRequest setHTTPShouldHandleCookies:YES];
[urlRequest setURL:urlOfService];
[urlRequest setHTTPMethod:@"POST"];

NSURLSessionConfiguration *sessionConfiguration = [NSURLSessionConfiguration defaultSessionConfiguration];
sessionConfiguration.HTTPAdditionalHeaders = @{@"Content-Type"       : @"application/json"};
NSURLSessionDataTask *postDataTask = [session dataTaskWithRequest:urlRequest completionHandler:^(NSData *data, NSURLResponse *response, NSError *error) {
}];

, NSMutableURLRequest, , webservice iOS8.3. , . , - . , - - ? - , iOS, 8.3?

2:

NSMutableURLRequest *urlRequest = [[NSMutableURLRequest alloc] init];
NSData *postData = [dataToBeSent dataUsingEncoding:NSUTF8StringEncoding allowLossyConversion:YES];
[urlRequest setHTTPBody:postData];
[urlRequest setHTTPShouldHandleCookies:YES];
[urlRequest setURL:urlOfService];
[urlRequest setHTTPMethod:@"POST"];
[urlRequest addValue:@"application/json" forHTTPHeaderField:@"Content-Type"];

NSURLSessionConfiguration *sessionConfiguration = [NSURLSessionConfiguration defaultSessionConfiguration];

NSURLSessionDataTask *postDataTask = [session dataTaskWithRequest:urlRequest completionHandler:^(NSData *data, NSURLResponse *response, NSError *error) {
}];
+4
2

. , , AFNetworking.

, .. , iOS, , AFNetworking .

, , .

, , requesterialization. , , .

-1

All Articles