AFXMLRequestOperation Class Reference
| Inherits from | AFHTTPRequestOperation : AFURLConnectionOperation : NSOperation |
| Declared in | AFXMLRequestOperation.h AFXMLRequestOperation.m |
Overview
AFXMLRequestOperation is a subclass of AFHTTPRequestOperation for downloading and working with XML response data.
Acceptable Content Types
By default, AFXMLRequestOperation accepts the following MIME types, which includes the official standard, application/xml, as well as other commonly-used types:
application/xmltext/xml
Use With AFHTTPClient
When AFXMLRequestOperation is registered with AFHTTPClient, the response object in the success callback of HTTPRequestOperationWithRequest:success:failure: will be an instance of NSXMLParser. On platforms that support NSXMLDocument, you have the option to ignore the response object, and simply use the responseXMLDocument property of the operation argument of the callback.
Tasks
Getting Response Data
-
responseXMLParserAn
propertyNSXMLParserobject constructed from the response data. -
responseXMLDocumentAn
propertyNSXMLDocumentobject constructed from the response data. If an error occurs while parsing,nilwill be returned, and theerrorproperty will be set to the error. -
+ XMLParserRequestOperationWithRequest:success:failure:Creates and returns an
AFXMLRequestOperationobject and sets the specified success and failure callbacks. -
+ XMLDocumentRequestOperationWithRequest:success:failure:Creates and returns an
AFXMLRequestOperationobject and sets the specified success and failure callbacks.
Other Methods
-
– error -
+ acceptableContentTypesReturns an
NSSetobject containing the acceptable MIME types. When non-nil, the operation will set theerrorproperty to an error inAFErrorDomain. See http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.17 -
+ canProcessRequest:A Boolean value determining whether or not the class can process the specified request. For example,
AFJSONRequestOperationmay check to make sure the content type wasapplication/jsonor the URL path extension was.json. -
– setCompletionBlockWithSuccess:failure:Sets the
completionBlockproperty with a block that executes either the specified success or failure block, depending on the state of the request on completion. Iferrorreturns a value, which can be caused by an unacceptable status code or content type, thenfailureis executed. Otherwise,successis executed.
Properties
responseXMLDocument
An NSXMLDocument 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) NSXMLDocument *responseXMLDocumentDiscussion
An NSXMLDocument 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
AFXMLRequestOperation.hClass Methods
XMLDocumentRequestOperationWithRequest:success:failure:
Creates and returns an AFXMLRequestOperation object and sets the specified success and failure callbacks.
+ (AFXMLRequestOperation *)XMLDocumentRequestOperationWithRequest:(NSURLRequest *)urlRequest success:(void ( ^ ) ( NSURLRequest *request , NSHTTPURLResponse *response , NSXMLDocument *document ))success failure:(void ( ^ ) ( NSURLRequest *request , NSHTTPURLResponse *response , NSError *error , NSXMLDocument *document ))failureParameters
- 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 XML document 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 XML. 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 XML request operation
Discussion
Creates and returns an AFXMLRequestOperation object and sets the specified success and failure callbacks.
Declared In
AFXMLRequestOperation.hXMLParserRequestOperationWithRequest:success:failure:
Creates and returns an AFXMLRequestOperation object and sets the specified success and failure callbacks.
+ (AFXMLRequestOperation *)XMLParserRequestOperationWithRequest:(NSURLRequest *)urlRequest success:(void ( ^ ) ( NSURLRequest *request , NSHTTPURLResponse *response , NSXMLParser *XMLParser ))success failure:(void ( ^ ) ( NSURLRequest *request , NSHTTPURLResponse *response , NSError *error , NSXMLParser *XMLParser ))failureParameters
- 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 XML parser constructed with the response data of request.
Return Value
A new XML request operation
Discussion
Creates and returns an AFXMLRequestOperation object and sets the specified success and failure callbacks.
Declared In
AFXMLRequestOperation.hacceptableContentTypes
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 *)acceptableContentTypesDiscussion
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.hcanProcessRequest:
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 *)requestParameters
- 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.hInstance Methods
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 ))failureParameters
- 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