NSURLRequest configurando el encabezado HTTP

Necesito configurar el encabezado HTTP para una request. En la documentation para la class NSURLRequest no encontré nada con respecto al encabezado HTTP. ¿Cómo puedo configurar el encabezado HTTP para que contenga datos personalizados?

Debe usar una NSMutableURLRequest

NSMutableURLRequest* request = [[[NSMutableURLRequest alloc] initWithURL:url] autorelease]; [request setValue:VALUE forHTTPHeaderField:@"Field You Want To Set"]; 

o para agregar un encabezado:

 [request addValue:VALUE forHTTPHeaderField:@"Field You Want To Set"]; 

para Swift

 let url: NSURL = NSURL(string: APIBaseURL + "&login=1951&pass=1234")! var params = ["login":"1951", "pass":"1234"] request = NSMutableURLRequest(URL:url) request.HTTPMethod = "POST" var err: NSError? request.HTTPBody = NSJSONSerialization.dataWithJSONObject(params, options: nil, error: &err) request.addValue("application/json", forHTTPHeaderField: "Content-Type") request.addValue("application/json", forHTTPHeaderField: "Accept") 
  NSMutableURLRequest *request=[NSMutableURLRequest requestWithURL:url cachePolicy:NSURLRequestReloadIgnoringCacheData timeoutInterval:60]; [request setHTTPMethod:@"POST"]; [request setValue:postLength forHTTPHeaderField:@"Content-Length"]; [request setValue:@"application/x-www-form-urlencoded" forHTTPHeaderField:@"Content-Type"]; [request setValue:@"your value" forHTTPHeaderField:@"for key"];//change this according to your need. [request setHTTPBody:postData]; 

Sé que es tarde, pero puede ayudar a otros. Para SWIFT 3.0

 let url = NSURL(string: "http://www.yourwebsite.com") let mutAbleRequest = NSMutableURLRequest(URL: url!) mutAbleRequest.setValue("YOUR_HEADER_VALUE", forHTTPHeaderField:"YOUR_HEADER_NAME") myWebView.loadRequest(mutAbleRequest) 

Puede agregar valor en NSMutableURLRequest para HeaderField:

 NSMutableURLRequest* request = [[NSMutableURLRequest alloc] initWithURL:url]; [request setValue:VALUE forHTTPHeaderField:@"cookie"]; 

Esto está funcionando para mí.

Código de muestra

  - (void)reqUserBalance:(NSString*)reward_scheme_id id:(NSString*)user_id success:(void (^)(id responseObject))success failure:(void (^)(id responseObject))failure{ NSURL *url = [NSURL URLWithString:[NSString stringWithFormat:@"%@reward/%@/user/%@/balance",URL_SERVER,reward_scheme_id,user_id]]; NSLog(@"%@",url); NSMutableURLRequest *request = [[NSMutableURLRequest alloc] initWithURL:url]; [request setValue:@"application/json" forHTTPHeaderField:@"Content-Type"]; [request setValue:@"true" forHTTPHeaderField:@"Bypass"]; [NSURLConnection sendAsynchronousRequest:request queue:[NSOperationQueue mainQueue] completionHandler:^(NSURLResponse *response, NSData *data, NSError *connectionError) { options:kNilOptions error:NULL]; if (data.length > 0 && connectionError == nil) { NSDictionary * userPoints = [NSJSONSerialization JSONObjectWithData:data options:0 error:NULL]; NSString * points = [[userPoints objectForKey:@"points"] stringValue]; NSLog(@"%@",points); [SecuritySetting shanetworkingInstance].usearAvailablePoints = points; } }]; }