0

completion handler私の目標は、標準のMoyaリクエスト呼び出しを使用してセットアップすることです。

これが私のプロセスです:

  1. MoyaProvider独自に準拠した a を使用してバックエンドを呼び出しますBackendAPI(セットアップ済み)
  2. この呼び出しを完了ハンドラーでラップして、[Player]データを返します (Playerはプロジェクトのカスタム クラスです)。
  3. 表示[Player]データ

実際のコードは次のとおりです。

func getPlayers(orchestraId: String, finished: @escaping () -> [Player]) {
    let provider = MoyaProvider<BackendAPI>()
    provider.request(.getPlayers(orchestraId: orchestraId)) { (result) in

        switch result {
        case let .success(moyaResponse):

            let statusCode = moyaResponse.statusCode
            if statusCode == 200 {
                let data = moyaResponse.data
                let json = JSON.init(data: data)

                let players: [Player] = self.deserializeJSONPlayers(with: json)

                return players

            } else {
                print ("Non 200 for league players data")
                self.debugStatementsFromResponse(response: moyaResponse)
            }

        case let .failure(error):
            print ("Error: \(error)")

        }
    }
}

行にエラーが表示され、void 関数returnで予期しない戻りが発生したというメモが表示されます。non-voidただし、関数を関数として宣言しましたnon-void。メソッドの構造化で間違っていることは何ですか?

4

1 に答える 1