在我的iOS应用程序中,我发现当我直接从浏览器中调用url时,我得到了一个最新的json,而当在应用程序中调用它时,我得到了一个较旧的json版本。我已经在加载URL的代码片段下面发布了代码。
func getItems() {
//Hit the web service Url
let serviceUrl = "omitted"
//Download the json data
let url = URL(string: serviceUrl)
if let url = url{
//Create a URL Session
let session = URLSession(configuration: .default)
let task = session.dataTask(with: url, completionHandler: {(data, response, error) in
if error == nil {
//Succeeded
//Call the parse json function on the data
self.parseJson(data!)
}
else {
print("error occured in getItems")
}
})
// Start the task
task.resume()
}
}
答案 0 :(得分:0)
您可以在URLRequest中设置cachePolicy
您的代码将是
func getItems() {
//Hit the web service Url
let serviceUrl = "omitted"
let url = URL(string: serviceUrl)
//Download the json data
if let url = url{
//Create a URL Session
let session = URLSession(configuration: .default)
let request = URLRequest(url: url, cachePolicy: .reloadIgnoringCacheData, timeoutInterval: 15.0)
let task = session.dataTask(with: request, completionHandler: {(data, response, error) in
if error == nil {
//Succeeded
//Call the parse json function on the data
self.parseJson(data!)
}
else {
print("error occured in getItems")
}
})
// Start the task
task.resume()
}
}