我在初始化 Alamofire 4.0 session 管理器时遇到问题。我的代码如下:
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)
行,我收到错误“无法使用类型为 (configuration: URLSessionConfiguration) 的参数列表调用 SessionManager”。这里的问题是什么?我正在关注文档:https://github.com/Alamofire/Alamofire#modifying-the-session-configuration
。我似乎以完全相同的方式初始化 session 管理器。对此的任何指示都将不胜感激!
最佳答案
可能你有这条线:
var alamoManager = Alamofire.SessionManager
但通过这一行,您可以调用常见的 Alamofire.SessionManager
初始化。
尝试将您的全局属性声明为:
var alamoManager = SessionManager()
所以它成为一个通用的 SessionManager
类型,带有默认的 SessionManager
初始化。
关于ios - 为什么我不能初始化 Alamofire 4 session 管理器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39629632/