使用NSURLConnection获取文件大小的速度非常慢



我试图获取存储在服务器上的文件的文件大小。

我设法做到了,但它需要和我下载它一样长的时间

我想它会下载文件来评估大小。

有没有更快的方法来获取文件大小?

func getFileSizeFromURL(sURL:String) -> String{
    let urlPath: String = sURL;
    var url: NSURL = NSURL(string: urlPath)!
    var request1: NSURLRequest = NSURLRequest(URL: url)

    var response : NSURLResponse?
    NSURLConnection.sendSynchronousRequest(request1, returningResponse: &response , error: nil)

    var size:String="";
    if let httpResponse = response as? NSHTTPURLResponse {
        println(httpResponse.expectedContentLength)

        size="(httpResponse.expectedContentLength)"
    }
    return size;
}

我想它会下载文件来评估大小。

是的,那是因为你实际上正在下载文件。相反,您应该使用HEAD请求来只获取有关该文件的数据。将方法从GET或POST更改为HEAD将只获得HTTP标头。在创建request1:后插入这样的行

request1.HTTPMethod = "HEAD"

相关内容

  • 没有找到相关文章

最新更新