> Was there any reason why you chose callbacks over a Promise-like pattern for the async responses?
Deeply-nested networking callbacks are a code smell, and I find that promises often do more harm by hiding those smells—or worse, obscuring the flow itself. In practice, Alamofire is mostly going to be single or at most nested two levels deep anyway.
What about supporting using something like PromiseKit for error handling and interoperability with aggregation methods? Would you be willing to consider that?
The short answer: Use the version of `request` that takes a `URLRequestConvertible`, and specify the header fields in that.
The long answer: Custom headers on a per-request basis are a bit of a red herring, from an API design perspective. In reality, most use cases boil down to one of three, which are taken care of in other ways:
- Default headers, such as `User-Agent`, are specified in `NSURLSessionConfiguration -HTTPAdditionalHeaders`.
- `Authorization` headers, which are handled by `NSURLCredential` and `NSURLAuthenticationChallenge`.
- `Content-Type` headers, which are handled by `ParameterEncoding`.
In the README it looks like using the ObjC AFNetworking is suggested if one wishes to do multipart http requests, I assume this is up to date and Alamofire doesn't support this at this time?