example afhttprequestoperation ios objective-c json afnetworking nsurlrequest

ios - afhttprequestoperation - Cómo agregar un encabezado personalizado a AFNetworking en un JSONRequestOperation



afhttprequestoperation swift 4 (4)

Hola, tengo el siguiente código para acceder a una URL:

NSString * stringURL = [NSString stringWithFormat:@"%@/%@/someAPI", kSERVICE_URL, kSERVICE_VERSION]; NSURLRequest * request = [NSURLRequest requestWithURL:[NSURL URLWithString:stringURL]]; AFJSONRequestOperation * operation = [AFJSONRequestOperation JSONRequestOperationWithRequest:request success:^(NSURLRequest *request, NSHTTPURLResponse *response, id JSON) { completionHandler(JSON, nil); } failure:^(NSURLRequest *request, NSHTTPURLResponse *response, NSError *error, id JSON) { completionHandler(nil, error); }];

Pero quiero pasar el token de usuario como parámetro en HEADER , como X-USER-TOKEN .

¿No puedo encontrarlo en la AFNetworking documentation ¿Debo cambiar el tipo de operación?


Hice esto :)

[manager.requestSerializer setValue:[NSString stringWithFormat:@"Token token=/"%@/"", _userObj.oAuth] forHTTPHeaderField:@"Authorization"];


Si tiene una capa de abstracción, digamos APIManager, entonces debe hacer lo siguiente dentro de un método particular

[[HTTPClient sharedHTTPClient].requestSerializer setValue:YOUR_KEY forHTTPHeaderField:@"X-Register"];


Utilice AFHTTPClient o subclase!

Puede establecer los encabezados predeterminados con -setDefaultHeader:value: así:

[self setDefaultHeader:@"X-USER-TOKEN" value:userToken];

Puedes consultar la documentation


NSMutableURLRequest* request = [[NSMutableURLRequest alloc] initWithURL:url]; [request setValue: @"X-USER-TOKEN" forHTTPHeaderField:@"< clientToken >"]; [AFJSONRequestOperation JSONRequestOperationWithRequest: request ...]