On Jan 29, 2012, at 12:21 AM, Ken Thomases wrote:

> * The keys that are valid for that method are those listed in the NSURL 
> documentation.  They may bear no relation to HTTP response header fields.  
> So, I see no reason to believe that "content-length" is a valid key.  Have 
> you tried NSURLFileSizeKey?
> 
> 
>> If I send:
>> 
>> value = [path propertyForKey:@"content-length"];
>> 
>> which is deprecated, I get the correct file size.
> 
> That may be fluke.

NSURL’s now deprecated -propertyForKey: method existed long before any of those 
NSURL*Key constants did, so it’s difficult to imagine what could have been 
passed to it other than HTTP response header field names.

At any rate, this should do what you want:

NSMutableURLRequest *req = [NSMutableURLRequest requestWithURL:url];

req.HTTPMethod = @"HEAD";
[req setValue:@"" forHTTPHeaderField:@"Accept-Encoding"];

void (^completionBlock)(NSURLResponse *resp, NSData *data, NSError *error) = 
^(NSURLResponse *resp, NSData *data, NSError *error) {
    if([resp isKindOfClass:[NSHTTPURLResponse class]]) {
        NSLog(@"length is %@", [((NSHTTPURLResponse *)resp).allHeaderFields 
objectForKey:@"Content-Length"]);
    }
};

[NSURLConnection sendAsynchronousRequest:req queue:[NSOperationQueue mainQueue] 
completionHandler:completionBlock];

Charles
_______________________________________________

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com

Reply via email to