Ahora sé que xCode hace automaticamente el decrompession GZip para usted dentro:iPhone y gzip
NSData *data = [NSData dataWithContentsOfURL:URL];
y funciona si apuntar a un archivo Gzip en mi servidor. Pero ya que mi contenido es dinámico, tengo un script PHP que en lugar de crear un archivo gzip, así:
$zp = gzopen($file, "r");
$data = gzread($zp, $filesize);
gzclose($zp);
codificar mis propios datos con:
echo gzencode($data, 9);
Con esta agrego las siguientes cabeceras :
header("Content-Type: application/x-gzip");
header("Content-Encoding: gzip");
header("Accepts-Encoding: gzip");
Cuando hojeo a la dirección URL, el navegador quiere descargar el archivo automáticamente y yo soy capaz de descomprimir en mi Mac y ver su contenido. Sin embargo, cuando intento leerlo a través de xCode, no funciona.
NSData *data = [NSData dataWithContentsOfURL:URL];
NSString *content = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];
NSLog (content); //returns only data when pointed directly to a Gzip file
¿Olvidé decir algo?
sí. te estás olvidando de aceptar tus respuestas !! (Lo siento, no pude resistir!) –
Está utilizando NSLog incorrectamente. Use una cadena de formato: 'NSLog (@"% @ ", contenido);' – gerry3
Recién salido de interés, ¿por qué querría hacer esto? ¿No sería mucho más simple usar mod_deflate y no requeriría ninguna intervención manual como esta? – djskinner