Вход на сайт с помощью asihttprequest - PullRequest
0 голосов
/ 29 марта 2012

Я пытаюсь войти на простую веб-страницу, которую я сделал, у вас есть код в - (IBACTION) {}

Когда я нажимаю кнопку, она должна получить данные

вот мой код

-(IBAction)fetchData:(id)sender {
NSURL *url = [NSURL URLWithString:@"http://rssit.site90.com/login.php"];
ASIFormDataRequest *request = [ASIFormDataRequest requestWithURL:url];
[request setRequestMethod:@"POST"];
[request addPostValue:@"" forKey:@"username"];
[request addPostValue:@"" forKey:@"password"];


[request setDelegate:self];
[request startAsynchronous];
NSLog(@"%d, %@", request.responseStatusCode, [request responseString]);

}

Когда я запускаю его, он возвращает 0, (ноль) я посмотрел заголовочный файл на asihttprequest, и это означает, что аутентификация не требуется?Но на этом сайте есть логин.

Я ввожу имя пользователя и пароль, я просто не указал их здесь

1 Ответ

1 голос
/ 29 марта 2012

Перепишите код следующим образом и бинго ....

-(IBAction)fetchData:(id)sender 
{
    NSURL *url = [NSURL URLWithString:@"http://rssit.site90.com/login.php"];
    ASIFormDataRequest *request = [ASIFormDataRequest requestWithURL:url];
    [request setRequestMethod:@"POST"];
    [request addPostValue:@"" forKey:@"username"];
    [request addPostValue:@"" forKey:@"password"];
    [request setDelegate:self];
    [request startAsynchronous];

    //Add finish or failed selector
    [request setDidFinishSelector:@selector(requestLoginFinished:)];
    [request setDidFailSelector:@selector(requestLoginFailed:)];

    NSLog(@"%d, %@", request.responseStatusCode, [request responseString]);

}

- (void)requestLoginFinished:(ASIHTTPRequest *)request
{
//Check response of request here and act accordingly
NSString *yourResponse = [request responseString]; //corrected here please change it to responseString
//Parse above response and check it.
}


- (void)requestLoginFailed:(ASIHTTPRequest *)request
{
//some error was there processing request 
//Check error 
NSError *error = [request error];
NSLog(@"Failed ---> %@",[error localizedDescription]);
}

Пока вы делаете запрос, вам нужно подождать до завершения запроса, хотя вы делаете асинхронный запрос, потому что это информация для входа и вам нужно подождатьприходит ответ.

...