NSURLSessionを使ってJSONデータの取得(iOS, Objective-C)

NSURLSession関連のポストが増えてきましたね.いい感じです. 今回はNSURLSessionを使ってJSONデータを取得してみます.格納はまた後日. ここまで行けば格納は問題ないと思います.
JSONデータはここ から取得します. JSON Generator – tool for generating random JSON data を使えば簡単にテストJSONデータが作成できるみたいです. ソースコードは以下のようになりました.

NSString *urlString = @"http://www.json-generator.com/j/bYArmwnBQi?indent=4";
NSURL *url = [NSURL URLWithString:urlString];

NSURLSessionConfiguration *config = [NSURLSessionConfiguration defaultSessionConfiguration];
NSURLSession *session = [NSURLSession sessionWithConfiguration:config delegate:self delegateQueue:nil  ];

NSURLSessionDataTask *jsonData = [session dataTaskWithURL:url completionHandler:^(NSData *data, NSURLResponse *response, NSError *error) {
    if (!error) {
        NSHTTPURLResponse *httpResp = (NSHTTPURLResponse *) response;
        if (httpResp.statusCode == 200) {
            NSError *jsonError;

            NSArray *testJSON = [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingAllowFragments error:&jsonError];
            if (!jsonError) {
                // something for json data
                dispatch_async(dispatch_get_main_queue(), ^{
                    // something after parsing json data
                });
            }
        }
    }
}];
[jsonData resume];

somethingの所に格納処理を書けば良いかと思います. testJSONの型をNArrayにしていますが,ここは扱うJSONによって適宜変更で. とりあえずこれでやっかいな所は終わりそうだ.次は格納も含めてGoogle Image Search APIを使ってみたいと思います. あくまでも予定.

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中