代码之家  ›  专栏  ›  技术社区  ›  Argus Legonaftik

swift-如何在iphone上通过http获取文件的最后修改日期

  •  -2
  • Argus Legonaftik  · 技术社区  · 6 年前

    我想实现一种机制,它将下载本地文件并与服务器上的文件同步。

    但文件太大,每次下载都太长。 所以我想比较本地文件和远程文件的最后修改日期,以确定是否需要下载。

    但是如何通过 HTTP 不下载吗?

    1 回复  |  直到 6 年前
        1
  •  0
  •   Argus Legonaftik    6 年前

    斯威夫特4

    public static func getFilyLastModifiedDate(url: URL, completion: @escaping (_ modificatinDate: String?) -> ()) {
        var request = URLRequest(url: url)
        request.httpMethod = "HEAD"
        let task = URLSession.shared.dataTask(with: url) { (data, response, error) in
            let headers = (response as? HTTPURLResponse)?.allHeaderFields
            var lastModified: String?
            if let headers = headers {
                lastModified = headers["Last-Modified"] as? String
            }
            NSLog("Last-Modified Date: %@", lastModified ?? "")
            completion(lastModified)
        }
        task.resume()
    }