如何在JSON更新时使用新值更新URL请求

问题描述 投票:0回答:1

我正在发出URL请求,并且数据已检索并正确显示。但是,当我更新JSON数据并重新加载应用程序时,不会显示新数据,而只会显示旧数据。

如果设置断点并查看请求,则即使确保在我的URL上更新了数据,响应也是旧的JSON数据。我可以在应用程序中更新数据的唯一方法是,如果我实际上是从模拟器或手机中删除该应用程序并重新安装。

这是我的要求:

func getReviews() {
    guard let url = URL(string: "my url") else {
        print("Invalid URL")
        return
    }

    let session = URLSession(configuration: .default)

    session.dataTask(with: URL(string: url)!) { (data,_,_) in
        do {
            let fetchedPosts = try JSONDecoder().decode([Review].self, from: data!)
            DispatchQueue.main.async {
                self.reviews = fetchedPosts

            }
        }
        catch {
            print(error.localizedDescription)
        }
    }.resume()
}

有人遇到这个问题吗?

swift swift2 swiftui urlrequest
1个回答
0
投票

您可能需要重新加载要显示的任何数据。例如,如果是UITableViewUICollectionView,只需使用reloadData(),如下所示:

DispatchQueue.main.async {
    self.reviews = fetchedPosts
    self.reviewsView.reloadData()
}
© www.soinside.com 2019 - 2024. All rights reserved.