ios – Alamofire 4.0 RequestRetrier应该(_,retry,with,completion)不被调用

我正在使用Alamofire 4.0的RequestRetrier来控制对过期访问令牌的请求的重试.我正在关注文档 here.

我对文档OAuth2Handler中的示例有一个非常类似的实现,它实现了RequestAdapter和RequestRetrier.

我遇到的问题是func应该(_ manager:SessionManager,重试请求:请求,有错误错误,完成:@escaping RequestRetryCompletion)永远不会被调用.然而,RequestAdapter实现的adapt方法会被调用.

调试时,我看到SessionDelegate只在出现错误调用(_,retry,with,completion),但返回与授权问题相关的状态代码的请求似乎不会产生错误,因此永远不会调用方法.

在这里错过了什么吗?

解决方法

也许你没有收到错误. Alamofire不会将400条回复视为错误.如果您希望在收到400代码时收到错误,您应该将validate()链接到请求.
如果是这种情况,您可以找到更多信息 here.

相关文章

UITabBarController 是 iOS 中用于管理和显示选项卡界面的一...
UITableView的重用机制避免了频繁创建和销毁单元格的开销,使...
Objective-C中,类的实例变量(instance variables)和属性(...
从内存管理的角度来看,block可以作为方法的传入参数是因为b...
WKWebView 是 iOS 开发中用于显示网页内容的组件,它是在 iO...
OC中常用的多线程编程技术: 1. NSThread NSThread是Objecti...