HTTP Get Метод в XCode - PullRequest
       1

HTTP Get Метод в XCode

1 голос
/ 06 января 2011

Мне нужно создать метод Get Http в XCode для подключения к хосту. Метод http с cookie любит это:

Cookie: RouteID=route.neo_srv02; username=01216332476; __utma=72292239.948454815.1294242721.1294288226.1294301327.5; __utmz=72292239.1294242721.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none)

Я не знаю, как это сделать, как установить Cookie и, кроме того, подключиться через прокси.

Ответы [ 3 ]

1 голос
/ 06 января 2011

// Инициировать соединение

NSMutableURLRequest *request = [[[NSMutableURLRequest alloc] init] autorelease];
[request setURL:[NSURL URLWithString:urlString]];
[request setHTTPMethod:@"GET"];

//keep adding your headers this way

NSString *accept = [NSString stringWithFormat:@"application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5"];

[request addValue:accept forHTTPHeaderField: @"Accept"];

//send request & get response

NSData *returnData = [NSURLConnection sendSynchronousRequest:request returningResponse:nil error:nil];
1 голос
/ 09 мая 2012

Для метода Get ... Пример отправки текста

NSURL * serviceUrl = [NSURL URLWithString:@"http://.......url"];
NSMutableURLRequest * serviceRequest = [NSMutableURLRequest requestWithURL:serviceUrl];
[serviceRequest setValue:@"text" forHTTPHeaderField:@"Content-type"];

[serviceRequest setHTTPMethod:@"GET"];
[serviceRequest setValue:@"asd" forHTTPHeaderField:@"username"];
[serviceRequest setValue:@"asd" forHTTPHeaderField:@"password"];


//Get Responce hear----------------------   
NSURLResponse *response;
NSError *error;
NSData *urlData=[NSURLConnection sendSynchronousRequest:serviceRequest returningResponse:&response error:&error];
NSString *strdata=[[NSString alloc]initWithData:urlData encoding:NSUTF8StringEncoding]; 
NSLog(@"%@",strdata);

Для метода Post .... Отправка XML-примера

NSString * xmlString = @"<Envelope><Body>............</Body></Envelop";

NSURL * serviceUrl = [NSURL URLWithString:@"http://...............url"];
NSMutableURLRequest * serviceRequest = [NSMutableURLRequest requestWithURL:serviceUrl];
[serviceRequest setValue:@"text/xml" forHTTPHeaderField:@"Content-type"];

[serviceRequest setHTTPMethod:@"POST"];
[serviceRequest setHTTPBody:[xmlString dataUsingEncoding:NSASCIIStringEncoding]];

//    response hear-----------------
NSURLResponse *response;
NSError *error;
NSData *urlData=[NSURLConnection sendSynchronousRequest:serviceRequest returningResponse:&response error:&error];
NSString *strdata=[[NSString alloc]initWithData:urlData encoding:NSUTF8StringEncoding]; 
NSLog(@"%@",strdata);
0 голосов
/ 06 января 2011

Вы можете попытаться взглянуть на curl. Доступ к нему можно получить как из командной строки, так и из сценариев сборки.

Полная документация доступна через man curl в командной строке.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...