Skip to content

Latest commit

 

History

History
executable file
·
61 lines (44 loc) · 1.57 KB

README.md

File metadata and controls

executable file
·
61 lines (44 loc) · 1.57 KB

NSURLSession+SynchronousTask

NSURLSession+SynchronousTask is an NSURLSession category which brings NSURLConnection-like (remember sendSynchronousRequest:returningResponse:error:?) synchronous tasks to NSURLSession.

Internally the category uses GCD to wait for the tasks to finish.

Installation

CocoaPods is the recommended method of installing NSURLSession-SynchronousTask. Simply add the following line to your Podfile:

Podfile

pod 'NSURLSession-SynchronousTask'

Usage

NSURLSessionDataTask

NSURL *url = ...
NSError *error = nil;
NSURLResponse *response = nil;
NSData *data = [[NSURLSession sharedSession] sendSynchronousDataTaskWithURL:url returningResponse:&response error:&error];
...

NSURLSessionDownloadTask

NSURL *url = ...
NSError *error = nil;
NSURLResponse *response = nil;
NSURL *fileURL = [[NSURLSession sharedSession] sendSynchronousDownloadTaskWithURL:url returningResponse:&response error:&error];
...

NSURLSessionUploadTask

NSURLRequest *uploadRequest = ...
NSData *dataToBeUploaded = ...
NSError *error = nil;
NSURLResponse *response = nil;
NSData *data = [[NSURLSession sharedSession] sendSynchronousUploadTaskWithRequest:uploadRequest fromData:dataToBeUploaded returningResponse:&response error:&error];
...

Contact

Florian Schliep

License

NSURLSession+SynchronousTask is available under the MIT license. See the LICENSE.txt file for more info.