Skip to content
Fetching contributors…
Cannot retrieve contributors at this time
37 lines (21 sloc) 2.04 KB
[NEW!] Documentation is available at:
ASIHTTPRequest is an easy to use wrapper around the CFNetwork API that makes some of the more tedious aspects of communicating with web servers easier.
It is suitable for when you want to submit data to an existing web form, or don't want to mess around with SOAP or XML-RPC.
It provides:
* A straightforward interface for submitting data to (GET & POST) and fetching data from webservers
* The ability to submit files on local drives as part of POST data, compatible with the HTML file input mechanism
* Easy access to request and response HTTP headers
* Ability for setting up progress delegates (e.g. NSProgressIndicators) to show information about download AND upload progress
* Basic authentication (username and password) support, credentials are automatically for the duration of a session, and can be stored for later in the Keychain.
* Cookie support - read and write cookies, and re-use them in other requests
* Based on NSOperation to make queuing requests and background operation easy
* Basic unit tests (more to come!)
ASIHTTPRequest comes as part of a simple application that demonstrates many of the features above, just look at AppDelegate.m for good pointers on basic usage, or read the comments in ASIHTTPRequest.h for more detail.
ASIHTTPRequest is partly based on code from Apple's ImageClient code samples, so if it doesn't meet your needs, take a look at their CFNetwork examples for more.
ASIHTTPRequest is my first open source Objective-C code. I hope to expand the class and example application further (unit tests, maybe even iphone examples...) in the coming months. If you find it helpful, please do get in touch!
To do:
More unit tests
Split up class - move form request stuff into subclass, and have simple implementation for main that sets request body according to data supplied by the subclass - this will allow other types of HTTP request (eg soap)
Add SOAP example
See if Digest Authentication works
Something went wrong with that request. Please try again.