0

だから、私はこのコードを数日間機能させようとしてきましたが、何が間違っているのかわかりません。

Web から JSON を取得し、Struct ブロックで解析しています。

問題は、デコード関数を作成した場所から JSON の辞書と配列を使用したいということです。

ここにコードがあります

import UIKit


struct  Currency_format: Decodable{
    var iso_code: String
    var example_format : String
    var decimal_digits : Int
    var decimal_separator : String
    var symbol_first : Bool
    var group_separator : String
    var currency_symbol : String
    var display_symbol : Bool
}

struct  Date_Format: Decodable{
    var format : String
}

struct Budgets: Decodable {
    var id : String
    var name: String
    var last_modified_on : String
    var first_month : String
    var last_month : String
    var date_format : Date_Format
    var currency_format : Currency_format
}

struct DataResponse : Decodable {
    var data : Data
}

struct Data : Decodable{
    var budgets : [Budgets]
}


class ViewController: UIViewController {


override func viewDidLoad() {
    super.viewDidLoad()
    let accessToken = "1234"
    let authorizationRequestHeader = "https://www.somewhere.com=\(accessToken)"


    guard let url = URL(string: authorizationRequestHeader) else {
        print("Error")
        return
    }
    let session = URLSession.shared
    session.dataTask(with: url) { (stringData, response, Error) in
        let testString =  try! dataResponse.decode(DataResponse.self, from:stringData!)
        print("Number of records: \(testString.data.budgets.count)")
        //THIS PRINT WORKS AS I WANT IT TO WORK. NOT PROBLEM HERE
        }.resume()

  print("Number of records: \(testString.data.budgets.count)") // BUT THE SAME CODE HERE, DOES NOT WORK AT ALL
4

2 に答える 2