Inherits from AFHTTPRequestOperation : AFURLConnectionOperation : NSOperation
Declared in AFJSONRequestOperation.h
AFJSONRequestOperation.m

Overview

AFJSONRequestOperation is a subclass of AFHTTPRequestOperation for downloading and working with JSON response data.

Acceptable Content Types

By default, AFJSONRequestOperation accepts the following MIME types, which includes the official standard, application/json, as well as other commonly-used types:

  • application/json
  • text/json

Warning: JSON parsing will use the built-in NSJSONSerialization class.

Tasks

Getting Response Data

  •   responseJSON

    A JSON object constructed from the response data. If an error occurs while parsing, nil will be returned, and the error property will be set to the error.

    property
  •   JSONReadingOptions

    Options for reading the response JSON data and creating the Foundation objects. For possible values, see the NSJSONSerialization documentation section “NSJSONReadingOptions”.

    property

Creating Request Operations

Other Methods

Properties

JSONReadingOptions

Options for reading the response JSON data and creating the Foundation objects. For possible values, see the NSJSONSerialization documentation section “NSJSONReadingOptions”.

@property (nonatomic, assign) NSJSONReadingOptions JSONReadingOptions

Discussion

Options for reading the response JSON data and creating the Foundation objects. For possible values, see the NSJSONSerialization documentation section “NSJSONReadingOptions”.

Declared In

AFJSONRequestOperation.h

responseJSON

A JSON object constructed from the response data. If an error occurs while parsing, nil will be returned, and the error property will be set to the error.

@property (readonly, nonatomic, strong) id responseJSON

Discussion

A JSON object constructed from the response data. If an error occurs while parsing, nil will be returned, and the error property will be set to the error.

Declared In

AFJSONRequestOperation.h

Class Methods

JSONRequestOperationWithRequest:success:failure:

Creates and returns an AFJSONRequestOperation object and sets the specified success and failure callbacks.

+ (AFJSONRequestOperation *)JSONRequestOperationWithRequest:(NSURLRequest *)urlRequest success:(void ( ^ ) ( NSURLRequest *request , NSHTTPURLResponse *response , id JSON ))success failure:(void ( ^ ) ( NSURLRequest *request , NSHTTPURLResponse *response , NSError *error , id JSON ))failure

Parameters

urlRequest

The request object to be loaded asynchronously during execution of the operation

success

A block object to be executed when the operation finishes successfully. This block has no return value and takes three arguments: the request sent from the client, the response received from the server, and the JSON object created from the response data of request.

failure

A block object to be executed when the operation finishes unsuccessfully, or that finishes successfully, but encountered an error while parsing the response data as JSON. This block has no return value and takes three arguments: the request sent from the client, the response received from the server, and the error describing the network or parsing error that occurred.

Return Value

A new JSON request operation

Discussion

Creates and returns an AFJSONRequestOperation object and sets the specified success and failure callbacks.

Declared In

AFJSONRequestOperation.h

acceptableContentTypes

Returns an NSSet object containing the acceptable MIME types. When non-nil, the operation will set the error property to an error in AFErrorDomain. See http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.17

+ (NSSet *)acceptableContentTypes

Discussion

Returns an NSSet object containing the acceptable MIME types. When non-nil, the operation will set the error property to an error in AFErrorDomain. See http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.17

By default, this is nil.

Declared In

AFHTTPRequestOperation.h

canProcessRequest:

A Boolean value determining whether or not the class can process the specified request. For example, AFJSONRequestOperation may check to make sure the content type was application/json or the URL path extension was .json.

+ (BOOL)canProcessRequest:(NSURLRequest *)request

Parameters

urlRequest

The request that is determined to be supported or not supported for this class.

Discussion

A Boolean value determining whether or not the class can process the specified request. For example, AFJSONRequestOperation may check to make sure the content type was application/json or the URL path extension was .json.

Declared In

AFHTTPRequestOperation.h

Instance Methods

error

- (NSError *)error

Declared In

AFURLConnectionOperation.h

setCompletionBlockWithSuccess:failure:

Sets the completionBlock property with a block that executes either the specified success or failure block, depending on the state of the request on completion. If error returns a value, which can be caused by an unacceptable status code or content type, then failure is executed. Otherwise, success is executed.

- (void)setCompletionBlockWithSuccess:(void ( ^ ) ( AFHTTPRequestOperation *operation , id responseObject ))success failure:(void ( ^ ) ( AFHTTPRequestOperation *operation , NSError *error ))failure

Parameters

success

The block to be executed on the completion of a successful request. This block has no return value and takes two arguments: the receiver operation and the object constructed from the response data of the request.

failure

The block to be executed on the completion of an unsuccessful request. This block has no return value and takes two arguments: the receiver operation and the error that occurred during the request.

@discussion This method should be overridden in subclasses in order to specify the response object passed into the success block.

Discussion

Sets the completionBlock property with a block that executes either the specified success or failure block, depending on the state of the request on completion. If error returns a value, which can be caused by an unacceptable status code or content type, then failure is executed. Otherwise, success is executed.

Declared In

AFHTTPRequestOperation.h