framework español iphone objective-c cocoa cocoa-touch ios

iphone - español - NSURLRequest configurando el encabezado HTTP



cocoa touch español (6)

Necesito configurar el encabezado HTTP para una solicitud. En la documentación de la clase NSURLRequest no encontré nada con respecto al encabezado HTTP. ¿Cómo puedo configurar el encabezado HTTP para que contenga datos personalizados?


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)


Necesita 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"];


Puede agregar valor en NSMutableURLRequest para HeaderField:

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

Esto es trabajo para mí.


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")


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 sharedInstance].usearAvailablePoints = points; } }]; }


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];