I need to check the size of file from a URL. I get the file size perfectly when downloading file with AFNetworking.
AFHTTPRequestOperation *operation = [clie
here is the code:
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:candidateURL];
[request setHTTPMethod:@"HEAD"];
AFHTTPRequestOperation *operation = [[AFHTTPRequestOperation alloc] initWithRequest:request];
[operation setCompletionBlockWithSuccess:^(AFHTTPRequestOperation *operation, id responseObject)
{
NSLog(@"Content-lent: %lld", [operation.response expectedContentLength]);
} failure:^(AFHTTPRequestOperation *operation, NSError *error) {
NSLog(@"Error: %@", error);
}];
If the server supports it you can make a request to just get the headers (HEAD
, as opposed to GET
) without the actual data payload and this should include the Content-Length
.
If you can't do that then you need to start the download and use expectedContentLength
of the NSURLResponse
.
Basically, create an instance of NSMutableURLRequest
and call setHTTPMethod:
with the method
parameter set to @"HEAD"
(to replace the default which is GET
). Then send that to the server as you currently request for the full set of data (same URL).