ios – 如何使用Moya pod为请求设置超时?

ios – 如何使用Moya pod为请求设置超时?,第1张

概述我正在使用 Swift 3和 Moya pod. 我使用Basic Usage配置了我需要的所有东西,但是我找不到任何可以设置超时的函数或变量(对于每个请求或特定请求). 我怎样才能做到这一点? haydarKarkin在 comment on GitHub中提供了答案.下面的代码片段直接从他的评论中复制. 您可以通过创建自定义Alamofire会话管理器为Moya提供程序创建自定义配置: imp 我正在使用 Swift 3和 Moya pod.

我使用Basic Usage配置了我需要的所有东西,但是我找不到任何可以设置超时的函数或变量(对于每个请求或特定请求).

我怎样才能做到这一点?

解决方法 haydarKarkin在 comment on GitHub中提供了答案.下面的代码片段直接从他的评论中复制.

您可以通过创建自定义Alamofire会话管理器为Moya提供程序创建自定义配置:

import Foundationimport Alamofireclass DefaultAlamofireManager: Alamofire.SessionManager {    static let sharedManager: DefaultAlamofireManager = {        let configuration = URLSessionConfiguration.default        configuration.httpAdditionalheaders = Alamofire.SessionManager.defaulthttpheaders        configuration.timeoutIntervalForRequest = 20 // as seconds,you can set your request timeout        configuration.timeoutIntervalForResource = 20 // as seconds,you can set your resource timeout        configuration.requestCachePolicy = .useProtocolCachePolicy        return DefaultAlamofireManager(configuration: configuration)    }()    }

然后在声明您的提供商时包含自定义Alamofire Manager:

let ProvIDer = MoyaProvIDer<GithubAPI>(endpointClosure: endpointClosure,manager: DefaultAlamofireManager.sharedManager,plugins: [NetworkActivityPlugin(networkActivityClosure: networkActivityClosure)])
总结

以上是内存溢出为你收集整理的ios – 如何使用Moya pod为请求设置超时?全部内容,希望文章能够帮你解决ios – 如何使用Moya pod为请求设置超时?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/1102634.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-28
下一篇2022-05-28

发表评论

登录后才能评论

评论列表(0条)

    保存