为啥我不能初始化 Alamofire 4 会话管理器?
Posted
技术标签:
【中文标题】为啥我不能初始化 Alamofire 4 会话管理器?【英文标题】:Why can't I init Alamofire 4 session manager?为什么我不能初始化 Alamofire 4 会话管理器? 【发布时间】:2016-09-22 03:09:24 【问题描述】:我在初始化 Alamofire 4.0 会话管理器时遇到问题。我的代码如下:
func configAlamoManager()
let configuration = URLSessionConfiguration.default
configuration.timeoutIntervalForRequest = 20
if Features.JWT_AUTH
let user = SessionManager.getCurrentUser()
if let jwtToken = user.jwtToken
let bearer = "Bearer \(jwtToken)"
configuration.httpAdditionalHeaders = ["MyCompany-Authorization": bearer, "MyCompany-User-Agent": Config.MyCompanyUserAgentDataString]
else
configuration.httpAdditionalHeaders = ["MyCompany-User-Agent": Config.MyCompanyUserAgentDataString]
alamoManager = Alamofire.SessionManager(configuration: configuration)
对于alamoManager = Alamofire.SessionManager(configuration: configuration)
行,我收到错误“无法使用类型参数列表(配置:URLSessionConfiguration)调用 SessionManager”。这里有什么问题?我正在关注文档:https://github.com/Alamofire/Alamofire#modifying-the-session-configuration
。我似乎以完全相同的方式初始化会话管理器。对此的任何指示将不胜感激!
【问题讨论】:
你的问题解决了吗? 【参考方案1】:可能你有这行:
var alamoManager = Alamofire.SessionManager
但是通过这一行,您可以调用常见的Alamofire.SessionManager
初始化。
尝试将您的全局属性声明为:
var alamoManager = SessionManager()
所以它成为一个通用的SessionManager
类型,默认SessionManager
初始化。
【讨论】:
以上是关于为啥我不能初始化 Alamofire 4 会话管理器?的主要内容,如果未能解决你的问题,请参考以下文章
在 Alamofire 4.0 中初始化 SessionManager
为啥不建议在 Alamofire 中修改授权标头的会话配置?
为啥我不能将文件附加为 Alamofire 中的参数值之一?