Skip to content
This repository

The Objective-C HTTP library that Apple should have created, seriously.

branch: master

Fetching latest commit…

Octocat-spinner-32-eaf2f5

Cannot retrieve the latest commit at this time

Octocat-spinner-32 Seriously.framework updated readme July 14, 2010
Octocat-spinner-32 Seriously.xcodeproj
Octocat-spinner-32 SeriouslyDemo update the demo to support ARC March 04, 2013
Octocat-spinner-32 scripts
Octocat-spinner-32 src merge probablycorey/master to a-new-direction March 05, 2013
Octocat-spinner-32 .gitignore updated project for XCode 4 August 18, 2011
Octocat-spinner-32 COPYING
Octocat-spinner-32 Info.plist
Octocat-spinner-32 README.md
Octocat-spinner-32 Rakefile
Octocat-spinner-32 Seriously_Prefix.pch GENESIS!!! June 28, 2010
README.md

Seriously

The iPhone needs a better way to make HTTP requests, specifically calls to REST web services. Seriously mixes Blocks with NSURLConnection & NSOperationQueue to do just that. It also will automatically parse the JSON response into a dictionary if the response headers are set correctly.

Install

Just drag the files from the "src" directory into your project. You can also try using the included "Seriously.framework" file

Parse JSON EXAMPLE

NSString *url = @"http://api.twitter.com/1/users/show.json?screen_name=probablycorey";

[Seriously get:url handler:^(id body, NSHTTPURLResponse *response, NSError *error) {
    if (error) {
        NSLog(@"Error: %@", error);
    }
    else {
        NSLog(@"Look, JSON is parsed into a dictionary!");
        NSLog(@"%@", [body objectForKey:@"profile_background_image_url"]);
    }
}];

Simple Queue Example

NSArray *urls = [NSArray arrayWithObjects:
                 @"http://farm5.static.flickr.com/4138/4744205956_1f08ae40e3_o.jpg",
                 @"http://farm5.static.flickr.com/4123/4744238252_d11d0df5a3_b.jpg",
                 @"http://farm5.static.flickr.com/4097/4743596319_50cce97d80_o.jpg",
                 @"http://farm5.static.flickr.com/4099/4743581287_7c50529b36_o.jpg",
                 @"http://farm5.static.flickr.com/4123/4743587437_78f0906e8a_o.jpg",
                 @"http://farm5.static.flickr.com/4136/4743562971_d5f5c6d5b1_o.jpg",
                 @"http://farm5.static.flickr.com/4073/4744205142_be44e64ab7_o.jpg",
                 nil];

// By default the NSOperation will only do 3 requests at a time
for (NSString *url in urls) {
    NSOperation *o = [Seriously request:url options:nil handler:^(id body,
    NSHTTPURLResponse *response, NSError *error) {            
        NSLog(@"got %d (%@)", [urls indexOfObject:url], url);
    }];
}

Why Are You Using Blocks?

Welcome to the future dude!

TODO

  • Document
  • Add XML parsing
  • Add more options for NSOperationQueue management

Currently Maintained By:

@adamvduke

Something went wrong with that request. Please try again.