jjzjj

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

我正在使用Swift3和Moyapods。我使用BasicUsage配置了我需要的一切,但我没有找到任何可以设置超时的函数或变量(对于每个请求或特定请求)。我该怎么做? 最佳答案 haydarKarkin已在commentonGitHub中对此提供了答案.下面的代码片段是直接从他的评论中复制过来的。您可以通过创建自定义Alamofiresession管理器来为Moya提供程序创建自定义配置:importFoundationimportAlamofireclassDefaultAlamofireManager:Alamofire.Se

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

我正在使用Swift3和Moyapods。我使用BasicUsage配置了我需要的一切,但我没有找到任何可以设置超时的函数或变量(对于每个请求或特定请求)。我该怎么做? 最佳答案 haydarKarkin已在commentonGitHub中对此提供了答案.下面的代码片段是直接从他的评论中复制过来的。您可以通过创建自定义Alamofiresession管理器来为Moya提供程序创建自定义配置:importFoundationimportAlamofireclassDefaultAlamofireManager:Alamofire.Se

ios - 使用 retryWhen 根据 http 错误代码更新 token

我在Howtorefreshoauthtokenusingmoyaandrxswift上找到了这个例子我不得不稍微改变一下才能编译。此代码对我的场景有效80%。它的问题是它会针对所有http错误运行,而不仅仅是401错误。我想要的是将所有其他http错误作为错误传递,这样我就可以在其他地方处理它们,而不是在这里吞下它们。使用这段代码,如果我得到HttpStatus500,它会运行3次验证码,这显然不是我想要的。我试图更改此代码以仅处理句柄401错误,但似乎无论我做什么我都无法编译代码。它总是提示错误的返回类型,"CannotconvertreturnexpressionoftypeOb

ios - 使用 retryWhen 根据 http 错误代码更新 token

我在Howtorefreshoauthtokenusingmoyaandrxswift上找到了这个例子我不得不稍微改变一下才能编译。此代码对我的场景有效80%。它的问题是它会针对所有http错误运行,而不仅仅是401错误。我想要的是将所有其他http错误作为错误传递,这样我就可以在其他地方处理它们,而不是在这里吞下它们。使用这段代码,如果我得到HttpStatus500,它会运行3次验证码,这显然不是我想要的。我试图更改此代码以仅处理句柄401错误,但似乎无论我做什么我都无法编译代码。它总是提示错误的返回类型,"CannotconvertreturnexpressionoftypeOb

swift - 带有 Moya 请求的 RxSwift 顺序平面图

我目前有以下代码funcupdateItems(_observable:Observable)->Observable{returnobservable.concatMap({(containingEntity)->ObservableinguardletitemEntity=orderEntity.itemEntity,itemEntity.name.count==0else{returnObservable.just(entity)}print("Needtofetchnameofitem#\(itemEntity.id)")returnRestManager.getDetailO

ios - 使用 RxSwift 和 Moya 处理重新认证

我有一个项目,我在其中使用带有RxSwift扩展的Moya。简单的用例工作正常,我能够发出请求并以Observable的形式获得响应。publicfunctest()->Observable{returnprovider.request(.test).retry(5)}然后我可以订阅可观察对象并毫无问题地打印响应。但现在我需要处理身份验证逻辑。它的工作方式是我在运行上述请求时将token添加为HTTPheader字段。Moya允许我通过在endpointClosure中使用endpointByAddingHTTPHeaderFields透明地做到这一点。到目前为止没问题。当请求失败并显

testing - 为 Moya 请求编写单元测试

我想开始为我的所有Moya请求编写测试用例。如何测试从Swift生成的简单Moya.get请求? 最佳答案 这就是我使用Moya进行单元测试的方式。我的NetworkManager发出所有请求,init带有默认参数(用于生产代码),因此我们可以在测试时指定不同的提供程序。classNetworkManager{privateletprovider:MoyaProviderinit(provider:MoyaProvider=MoyaProvider()){self.provider=provider}funccreateUser(_

swift - 结合绑定(bind)到 tableView 处理网络错误(Moya、RxSwift、RxCocoa)

我目前正在使用Moya来发出我的网络请求。我已经从示例项目之一实现了以下内容@https://github.com/DroidsOnRoids/RxSwiftExamples#tutorials下面我设置了restaurantSearch,这样当有人输入文本时它会发出新请求。varrestaurantSearch:Observable{returnsearchBar.rx_text.throttle(0.5,scheduler:MainScheduler.instance).distinctUntilChanged()}我有一个返回[Restaurant]类型的可观察对象的方法func

关于 ios:如何使用 Moya/Alamofire 在 HTTP 请求中始终发送默认参数?

HowtoalwayssenddefaultparametersinHTTPrequestusingMoya/Alamofire?我的服务器端总是需要客户端发送令牌。作为开发人员,我可以忘记它。现在,我想提出一些解决方案,迫使我不要忘记发送这样一个必需的参数(它们将来会增长,例如,服务器可能需要设备的语言)。解决方案似乎很简单:我应该有一些ServerManager来获取参数(例如,["user":"John"])和URL路径。它还应该附加必需的参数,例如["token":"abscsdcds"]。伪代码如下所示:12345678910structServerManager{   funcre

关于 ios:如何使用 Moya/Alamofire 在 HTTP 请求中始终发送默认参数?

HowtoalwayssenddefaultparametersinHTTPrequestusingMoya/Alamofire?我的服务器端总是需要客户端发送令牌。作为开发人员,我可以忘记它。现在,我想提出一些解决方案,迫使我不要忘记发送这样一个必需的参数(它们将来会增长,例如,服务器可能需要设备的语言)。解决方案似乎很简单:我应该有一些ServerManager来获取参数(例如,["user":"John"])和URL路径。它还应该附加必需的参数,例如["token":"abscsdcds"]。伪代码如下所示:12345678910structServerManager{   funcre