MCHTTPRequestLogger - Output HTTP requests made with AFNetworking in the debug console.
MCHTTPRequestLogger
is an extension to AFNetworking that logs every requests and responses as they are sent and received. It is a lot more verbose than AFHTTPRequestOperationLogger, by design.
Example Usage
Just add the following code to your UIApplicationDelegate
, in the method -application:didFinishLaunchingWithOptions:
and you should see extensive information for each requests/responses in your Xcode console.
[[MCHTTPRequestLogger sharedLogger] startLogging];
// Set the JSONOutputStyle property to have pretty printed JSON output
[[MCHTTPRequestLogger sharedLogger] setJSONOutputStyle:MCHTTPRequestLoggerJSONOutputStylePrettyPrinted];
Disabling the logging service for a specific HTTP request
Add the MCHTTPRequestLoggerDefaultHeaderIgnore
HTTP header to the NSMutableURLRequest like this:
[request addValue:@"YES" forHTTPHeaderField:MCHTTPRequestLoggerDefaultHeaderIgnore];
The value for the header is not important. To disable the logging, MCHTTPRequestLogger search only the presence of the header.
Important Notes
- This code has been known to work on iOS 5.x+.
- This code uses Automatic Reference Counting, if your project does not use ARC, you must add the
-fobjc-arc
compiler flag to each implementation files inTarget Settings > Build Phases > Compile Source
. - This code also uses the literals syntax, so at least Xcode 4.5 is required.
Adding to your project
If you're using CocoaPods
, there's nothing simpler.
Add the following to your Podfile
and run pod install
pod 'MCHTTPRequestLogger'
Don't forget to #import "MCHTTPRequestLogger.h"
where it's needed.
License
MCHTTPRequestLogger is © 2013 Mirego and may be freely
distributed under the New BSD license.
See the LICENSE.md
file.
About Mirego
Mirego is a team of passionate people who believe that work is a place where you can innovate and have fun. We proudly build mobile applications for iPhone, iPad, Android, Blackberry, Windows Phone and Windows 8 in beautiful Quebec City.
We also love open-source software and we try to extract as much code as possible from our projects to give back to the community.