2011-02-25 8 views
11

que desee llamar a servicio web en la que C Objetivo devolver datos XML y tengo que pasar un poco de información en el encabezado al servidor, al igual que en javascript podemos hacerlo usando jQuery clave,Cómo establecer los campos de encabezado Http en Objective-C?

x.setRequestHeader (' ','valor');

donde x es el objeto xmlHttpRequest. Cómo podemos pasar los datos del encabezado en la clase NSConnection, Utilicé Google pero no encontré una buena solución. por favor ayúdame.

Respuesta

17

Puede pasar la información en el encabezado usando la clase NSMutableURLRequest y luego llamar a la clase NSURLConnection (llamará al delegado de conexión).

ver el siguiente código,


NSMutableURLRequest *theRequest=[NSMutableURLRequest requestWithURL:[NSURL URLWithString:[myServerUrl stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]] 
                 cachePolicy:NSURLRequestReloadIgnoringLocalCacheData 
                timeoutInterval:60.0]; 
//do post request for parameter passing 
[theRequest setHTTPMethod:@"POST"]; 

//set the content type to JSON 
[theRequest setValue:@"xml" forHTTPHeaderField:@"Content-Type"]; 

//passing key as a http header request 
[theRequest addValue:@"value1" forHTTPHeaderField:@"key1"]; 

//passing key as a http header request 
[theRequest addValue:@"value2" forHTTPHeaderField:@"key2"]; 

NSURLConnection *theConnection = [[NSURLConnection alloc] initWithRequest:theRequest delegate:self]; 

if(theConnection) 
{ 
    webData = [[NSMutableData data] retain]; 
} 
else 
{ 
    NSLog(@"theConnection is NULL"); 
} 

[theConnection release]; 
+0

Adición custum valor-clave en NSMutableURLRequest no funciona para direcciones URL HTTPS ... Alguna idea ?? – DShah

+0

Las URL son HTTP o HTTPS, no importa. NSMutableRequest envía el atributo en cualquier caso. ¿Ha manejado el delegado de autenticación para el servicio HTTPS? –

+0

¿Afirma que está configurando el tipo de contenido en JSON y aún así configurándolo en xml? Tienes que configurarlo en 'application/json' – Houman

Cuestiones relacionadas