Отправка POST-запроса в iPhone с помощью ASIHTTPRequest 1.6.2

Я использую ASIHTTPRequest 1.6.2 lib для всех HTTP-транзакций в IPhone. Но я не знаю, как я могу опубликовать данные с помощью ASIHTTPRequest в iPhone?

Не могли бы вы дать мне фрагмент кода, который будет работать в iphone? Для этого я использую следующий код. Но я получаю код ответа 0. Пожалуйста, помогите мне понять, в чем я ошибаюсь.

ASIFormDataRequest *request = [ASIFormDataRequest requestWithURL:url];
 [request setPostValue:inputXml forKey:@"inputXml"];
 [request setPostValue:@"qftS6TJN343343V84hw=" forKey:@"key"];
 [request setPostValue:@"1.2" forKey:@"version"];
 [request setRequestMethod:@"POST"];
 [request startAsynchronous];

person Nilanchal    schedule 28.09.2011    source источник


Ответы (4)


Вам следует использовать ASIFormDataRequest:

ASIFormDataRequest *request = [ASIFormDataRequest requestWithURL:url];
[request setPostValue:@"Ben" forKey:@"first_name"];
[request setPostValue:@"Copsey" forKey:@"last_name"];
[request setFile:@"/Users/ben/Desktop/ben.jpg" forKey:@"photo"];
person barfoon    schedule 28.09.2011
comment
@barfoon .. Я получаю код ответа 0. Я отредактировал вопрос и добавил код. Пожалуйста, изучите его и предложите установить любой другой дополнительный параметр. - person Nilanchal; 28.09.2011
comment
Можно установить ASINetworkQueue для загрузки нескольких изображений на сервер. - person Mahe; 11.12.2014

Вот как это сделать. Он охватывает все типы запросов, такие как получение, публикация формы, пользовательская публикация, размещение и т. Д.

http://allseeing-i.com/ASIHTTPRequest/How-to-use

Вот как настроить его в своем проекте XCode:

http://allseeing-i.com/ASIHTTPRequest/Setup-instructions

Эти инструкции и фрагменты должны работать в iOS.

person bryanmac    schedule 28.09.2011

Ниже приведен пример кода ...

    ASIHTTPRequest *request = [[ASIHTTPRequest alloc] initWithURL:url];
    [request appendPostData:[reqString dataUsingEncoding:NSUTF8StringEncoding]];
    [request setRequestMethod:@"POST"];
    [request setDelegate:self];
    [request setTimeOutSeconds:60]; 
    [request startAsynchronous];

Подробные инструкции вы получите здесь < / а>.

person alloc_iNit    schedule 28.09.2011

person    schedule
comment
Не могли бы вы добавить некоторые подробности, объясняющие, почему ваш код отвечает на вопрос? Что вы сделали иначе? - person xDaevax; 27.06.2014