代码我试图从AFNetworking转换为Alamofire是这样的:
let request = NSMutableURLRequest(URL: url)request.setValue(authorizationToken,forhttpheaderFIEld:"Authorization")根据官方文档,不建议修改会话配置:
This is not recommended for Authorization or Content-Type headers.
Instead,use URLRequestConvertible and ParameterEnCoding,
respectively.
因此,用于授权的URLRequestConvertible的示例用法是:
enum Router: URLRequestConvertible { static let baseUrlString = "some url string" case Get(query: String) var URLRequest: NSMutableURLRequest { let (path: String,parameters: [String: AnyObject]?) = { switch self { case .Get(let query): return ("/get",["q": query]) } }() let URL = NSURL(string: Router.baseUrlString)! let URLRequest = NSMutableURLRequest(URL: URL.URLByAppendingPathComponent(path)) // set header fIElds URLRequest.setValue("a",forhttpheaderFIEld: "Authorization") let enCoding = Alamofire.ParameterEnCoding.URL return enCoding.encode(URLRequest,parameters: parameters).0 }}
以及当您想要提出请求时:
Manager.sharedInstance.request(Router.Get(query: "test"))
有关URLRequestConvertible的更多信息:https://github.com/Alamofire/Alamofire#urlrequestconvertible
老答案
截至Alamofire v1.0 Pers回答不再有效。在新版本中,附加标题应该添加到NSURLSessionConfiguration的httpAdditionalheaders属性
Alamofire.Manager.sharedInstance.session.configuration.httpAdditionalheaders = ["Authorization": authorizationToken]
更多信息:https://github.com/Alamofire/Alamofire/issues/111
总结以上是内存溢出为你收集整理的swift – 如何使用Alamofire与自定义标题全部内容,希望文章能够帮你解决swift – 如何使用Alamofire与自定义标题所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)