Cómo convertir correctamente el encabezado Last-Modified de una respuesta HTTP a un NSDate en iOS

Estoy buscando una solución que funcione completamente, una que funcione con:

cualquier configuración regional o zona horaria de iOS cualquiera / la mayoría de los servidores HTTPXcode 4.0.2(ver por qué

Código roto actual:

 NSString lastModifiedString = @"Mon, 06 Jun 2011 12:47:05 GMT";
 NSDateFormatter *df = [[NSDateFormatter alloc] init];  
 //df.dateFormat = @"EEE',' dd MMM yyyy HH':'mm':'ss 'GMT'";
 df.dateFormat = @"EEE, dd MMM yyyy HH:mm:ss z";
 df.locale = [[[NSLocale alloc] initWithLocaleIdentifier:@"en_US_POSIX"] autorelease];  
 df.timeZone = [NSTimeZone timeZoneWithAbbreviation:@"GMT"];  
 NSDate date = [df dateFromString:lastModifiedString];  

Lo asumoLast-Modifiede supone que @ usa el mismo formato que otros campos de fecha en la especificación HTTP, lo que significa usar RFC-1123 / RFC-822

Recursos:

http: //www.w3.org/Protocols/rfc2616/rfc2616-sec14.htm HTTP 1.1http: //developer.apple.com/library/ios/#qa/qa1480/_index.htm

Respuestas a la pregunta(1)

Su respuesta a la pregunta