问题描述
我使用的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进行记录。这将显示有关在代理上执行请求时所发出请求的详细信息。