import Alamofire
import Moya
class WebService {
// set false when release
static var verbose: Bool = true
// session manager
static func manager() -> Alamofire.SessionManager {
let configuration = URLSessionConfiguration.default
configuration.httpAdditionalHeaders = Alamofire.SessionManager.defaultHTTPHeaders
configuration.timeoutIntervalForRequest = 15 // timeout
let manager = Alamofire.SessionManager(configuration: configuration)
manager.adapter = CustomRequestAdapter()
return manager
}
// request adpater to add default http header parameter
private class CustomRequestAdapter: RequestAdapter {
public func adapt(_ urlRequest: URLRequest) throws -> URLRequest {
var urlRequest = urlRequest
urlRequest.setValue("XMLHttpRequest", forHTTPHeaderField: "X-Requested-With")
return urlRequest
}
}
// response result type
enum Result {
case success(JSON)
case failure(String)
}
}
// use WebService.manager for provider
static let provider = MoyaProvider<TargetType>(manager: WebService.manager())
Moya 如何自定义 超时、 HTTP Header 等
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
相关阅读更多精彩内容
- 搜索 在一个字符串中搜索子字符串 最灵活的方法 格式化字符串 3个方法 整数 可以同时工作在32位和64位的 转换...
- 布料,在没成为衣服之前,是平面的;而人体是立体的三维存在,在还没有弹力材料的古代,衣服想要完全合身并非容易的事。远...