所以我正在为我的项目制作一个Alamofire网络实用程序类。
我在里面有很多功能,比如:
func createAccount()
func login()
我想对所有这些函数的请求和响应使用固定的时间限制。
我知道这同样有效:
let configuration = URLSessionConfiguration.default
configuration.timeoutIntervalForRequest = 10
configuration.timeoutIntervalForResource = 10
AFManager = Alamofire.SessionManager(configuration: configuration)
但是,我不想在所有实用程序函数中初始化AFManager。我要一份声明。我该怎么做呢?我拿不到。
最佳答案
你需要的是所谓的aproperty:
class NetworkManager {
private let manager: Alamofire.SessionManager = {
let configuration = URLSessionConfiguration.default
configuration.timeoutIntervalForRequest = 10
configuration.timeoutIntervalForResource = 10
retrurn Alamofire.SessionManager(configuration: configuration)
}()
func createAccount() {
manager.request(...)
...
}
func login() {
manager.request(...)
...
}
}