如何进行嵌套在 Swift 中另一个 API 失败回调中的同步 API 调用

How to make a synchronous API call which is nested inside another API failure callback in Swift

在 getRatingReviewFromServer() 中,如果我获得成功,一切都很好,但如果我失败了,我需要调用另一个 API refreshToken() 如果我在 refreshToken() 调用上获得成功,我将调用 getRatingReviewFromServer( ) 再次使用新数据,我将从 refreshToken() 成功获得。 我怎样才能用最好的方法实现这个目标?

    func getData(){
        service.getRatingReviewFromServer(succeed: {(message) in
                // my code code
                //exits
            }, failure: {message in
                service.refreshToken(succeed: {
                    data in
                    // call RatingReviewService().getRatingReviewFromServer() again
                }, failure: {
                    msg in
                    //exits
                })
         })
     }

我怎样才能做这样的事情?

func getData() {
    service.getRatingReviewFromServer(succeed: { (message) in
        // my code code
        //exits
     }, failure: { [weak self] (message) in
         service.refreshToken(succeed: { [weak self] (data) in
             // call RatingReviewService().getRatingReviewFromServer() again
            
             // You can restart the call
             self?.getData()
             
         }, failure: {
             msg in
             //exits
         })
     })
}