рдореИрдВ RequestRetrier рдХреЗ рдЕрдиреБрд░реВрдк рдПрдХ рд╡рд░реНрдЧ рдмрдирд╛рддрд╛ рд╣реВрдВ:
public class OAuth2Handler: RequestRetrier {
public func should(_ manager: SessionManager, retry request: Request, with error: Error, completion: <strong i="6">@escaping</strong> RequestRetryCompletion) {
print("Hello")
}
}
рдмрд╛рдж рдореЗрдВ рдЗрд╕реЗ рд╕реЗрдЯрдЕрдк рдХрд░реЗрдВ:
Alamofire.SessionManager.default.retrier = OAuth2Handler ()
рдЪрд▓реЛ alamoReq = Alamofire.SessionManager.default.request(myRequest)
рдореИрдВ 401 рдФрд░ 404 рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдкреНрд░рдпрд╛рд╕ рдХрд░рддрд╛ рд╣реВрдВ рдФрд░ рд╡рд┐рдзрд┐ рдХреЛ рдХрднреА рдирд╣реАрдВ рдмреБрд▓рд╛рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП ред рдЗрд╕реЗ рд╕рд╣реА рддрд░реАрдХреЗ рд╕реЗ рдХреИрд╕реЗ рд╕реЗрдЯ рдХрд░реЗрдВ?
рдЕрд▓рд╛рдореЛрдлрд╛рдпрд░ 4.0
рдЖрдИрдУрдПрд╕ 10.0.1
@рдлрд┐рд▓рд┐рдкреЛрд╡рджреЗрд╡ ,
рдХреНрдпрд╛ рдЖрдкрдХреЛ рдПрдХ рд╕рдорд╛рдзрд╛рди рдорд┐рд▓рд╛?
рдореИрдВ рдПрдХ рд╣реА рд╕рдорд╕реНрдпрд╛ рдХреЗ рд╕рд╛рде рд╣реВрдБред
рд╕рдорд╛рдзрд╛рди:
рдЖрдкрдХреЛ рдЕрдиреБрд░реЛрдз рдХреЗ рд▓рд┐рдП validate()
рд╢реНрд░реГрдВрдЦрд▓рд╛рдмрджреНрдз рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред
рдХрд╛рдо рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛
рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА
рд╕рдорд╛рдзрд╛рди:
рдЖрдкрдХреЛ рдЕрдиреБрд░реЛрдз рдХреЗ рд▓рд┐рдП
validate()
рд╢реНрд░реГрдВрдЦрд▓рд╛рдмрджреНрдз рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред