개발/iOS
NSURLSessionTask 캐싱 비활성화
SKY STORY
2022. 10. 24. 14:12
반응형
NSURLSessionTask 를 사용하여 파일을 로딩할 경우
최초 1회 이후 캐싱되어 웹에서 json파일을 변경해도 반영되지 않는다.
그래서 다음과같이 캐싱을 비활성화 하여 파일 변경사항이 즉시 반영되도록 하였다.
// 테스트용 json파일 다운로드
let urlString = "https://www.test.com/data/info.json"
// NSURLSessionTask 캐싱 비활성화
let config = URLSessionConfiguration.default
config.requestCachePolicy = .reloadIgnoringLocalCacheData
config.urlCache = nil
let session = URLSession(configuration: config)
session.dataTask(with: URL(string: urlString)!) { (data, response, error) -> Void in
if error == nil && data != nil {
do {
let json = try JSONSerialization.jsonObject(with: data!, options: .mutableContainers) as! [String: Any]
print("\(json)")
} catch {
print("Something went wrong")
}
}
}.resume()
반응형