My first thought is does AFNetworking not handle this already but if not I would suggest doing this in a more AFNetworking style: create an object of type AFHTTPResponseSerializer * and set an instance of it as the session manager's requestSerializer property
This way you can use the default session managers request methods (i.e. using the get methods and not having to worry about spelling GET, POST etc correctly), and you can be responsible for how the request is formatted by implementing
- (NSURLRequest *)requestBySerializingRequest:(NSURLRequest *)request withParameters:(NSDictionary *)parameters error:(NSError *__autoreleasing *)error;
Adding comment into answer: basically i think the request creation should happen in the requestSerializer object, not in the session manager itself. its ok to do this yourself (this is why AFNetworking provides the property to modify, and protocol to implement), but the session manager (subclass or not) isn't the place for it