计算来自Api的JSON请求

问题描述

我使用的API每小时允许我发送600个请求。 我的应用程序尚未完成,因此有时会测试JSON请求。我估计每小时大约有10个请求。

但是提供者说我做了600。 那怎么可能? 有没有办法计算我身边的请求?

我正在用我的窗口小部件(Widgetkit)进行请求。是否有可能每秒进行一次实时下载请求?

我的实际JSON请求:

class NetworkManager: ObservableObject {
    
    @Published var posts = [Post]()
    @Published var clubName = "..."
    @Published var teamId = "30"
    @Published var gastMannschaft = "..."
    
    let testStr = UserDefaults(suiteName: "gro")!.string(forKey: "test")
    

    
    init() {
            fetchData() // fetch data must be called at least once
        }

    func fetchData() {
        let teamId = testStr ?? "47"
        
        if let url = URL(string: "..." + teamId) {
            let session = URLSession(configuration: .default)
            let task = session.dataTask(with: url) { (gettingInfo,response,error) in
                if error == nil {
                    let decoder = JSONDecoder()
                    if let safeData = gettingInfo {
                        do {
                            let results = try decoder.decode(Results.self,from: safeData)
                            dispatchQueue.main.async {
                                
                                self.clubName = results.data[0].away_name
                                
                                
                                if #available(iOS 14.0,*) {
                                    WidgetCenter.shared.reloadAllTimelines()
                                } else {
                                    // Fallback on earlier versions
                                }
                                
                            }
                        } catch {
                            print(error)
                        }
                    }
                }
            }
            task.resume()
        }
    }
}

解决方法

您可能会发出一些您可能不知道的冗余请求。

要跟踪您的请求,您可以使用Charles Proxy进行记录。这将显示有关在代理上执行请求时所发出请求的详细信息。