34 lines
708 B
Swift
34 lines
708 B
Swift
//
|
|
// MoyaProviderExtension.swift
|
|
// SodaLive
|
|
//
|
|
// Created by klaus on 2023/11/17.
|
|
//
|
|
|
|
import Moya
|
|
import Foundation
|
|
|
|
extension MoyaProvider {
|
|
convenience init() {
|
|
self.init(plugins: [AuthPlugin()])
|
|
}
|
|
}
|
|
|
|
final class AuthPlugin: PluginType {
|
|
func didReceive(_ result: Result<Response, MoyaError>, target: TargetType) {
|
|
switch result {
|
|
case .success(let response):
|
|
DEBUG_LOG("\(response.statusCode) \(response)")
|
|
if response.statusCode == 401 {
|
|
AppState.shared.setAppStep(step: .main)
|
|
UserDefaults.reset()
|
|
}
|
|
break
|
|
|
|
case .failure(_):
|
|
break
|
|
}
|
|
}
|
|
}
|
|
|