2013-07-06 18 views
7

Come aggiungere una stringa semplice (nessun JSON o qualsiasi altro formato) a una richiesta di posta utilizzando AFNetworking? Il meglio che ho già avuto è stato concat con '='.AFNetworking-post request- aggiungi un testo semplice al corpo

E questo:

NSURLRequest* request =[myServer multipartFormRequestWithMethod:@"POST" path:@"http://my.server.com" parameters:nil constructingBodyWithBlock:^(id<AFMultipartFormData> formData) { 
    NSData *tmp_data = [NSString stringWithFormat:@"%@", @"my_string!"]; 
    [formData appendPartWithHeaders:nil body:tmp_data]; 
}]; 

Grazie in anticipo!

+0

'NSData * tmp_data = [NSString stringWithFormat: @"% @ ", @" myString! "];' - *** ??? *** La stringa di formato è superflua, il tipo restituito non è corretto ... –

+0

Grazie! Come dovrebbe essere? – gran33

+0

'NSData * data = [@" my_string "dataUsingEncoding: NSUTF8StringEncoding];' –

risposta

8

Semplice come è, questa dovrebbe essere la risposta:

NSMutableURLRequest *request = [[NSMutableURLRequest alloc] init]; 
[request setURL:[NSURL URLWithString:@"http://www.my.server.com"]]; 
[request setHTTPMethod:@"POST"]; 

//set headers 
NSString *contentType = @"text/xml"; 
[request addValue:contentType forHTTPHeaderField: @"Content-Type"]; 
[request addValue:@"any-value" forHTTPHeaderField: @"User-Agent"]; 

//create the body 
NSMutableData *postBody = [NSMutableData data]; 
[postBody appendData:[@"my_body_string!" dataUsingEncoding:NSUTF8StringEncoding]]; 

//post 
[request setHTTPBody:postBody]; 

Da qui, fare quello che vuoi con il http request (io ho usato con AFNetworking per l'invio).

Cheers!

Problemi correlati