ios - метод GET для приложения - PullRequest
1 голос
/ 29 ноября 2011

У меня есть это приложение, которое имеет имя пользователя и пароль.однако мне нужно заставить его войти в систему на определенном сайте и добавить пользователя и проверить профили. Мне сказали, что я должен использовать GET, чтобы добавить пользователя или запрос и проанализировать возвращаемые данные в json.

Чтоконкретные шаги, которые я буду делать?

Я пробовал несколько способов, но это действительно не помогло

Я искал в Google, но кажется, что тот, который я нашел, нетот, который мне нужен.

спасибо заранее :)

PS: я новичок в программировании, поэтому, пожалуйста, будьте осторожны со мной. (нырнул прямо в ios dev.)

Я создал приложение, и оно выглядит следующим образом

отредактировано: я немного его изменил

- (IBAction)getDataPressed
{


    if([myRequest_ isExecuting])
    {
        return;
    }

    if(myRequest_ != nil)
    {

        [myRequest_ release];

    }   

    myRequest_ = [[ASIHTTPRequest alloc]initWithURL:[NSURL URLWithString:URL_PATH]];
    myRequest_.delegate = self;

    [myRequest_ startAsynchronous];


}

#pragma ASI Delegate methods
- (void)requestFinished:(ASIHTTPRequest *)request
{

    NSLog(@"Request finished successfully");
    NSLog(@"%@",[request responseString]);


    NSDictionary *responseDictionary = [[request responseString]JSONValue];
    NSDictionary *arrayElement = [responseDictionary objectForKey:@"user"];


    NSString *ID = [arrayElement valueForKeyPath:@"id"];
    NSLog(@"id: %d",ID);
    NSString *usr = [arrayElement valueForKeyPath:@"usr"];
    NSLog(@"usr: %@",usr);
    NSString *gd = [arrayElement valueForKeyPath:@"gd"];
    NSLog(@"gd: %@",gd);
    NSString *age = [arrayElement valueForKeyPath:@"ag"];
    NSLog(@"ag: %@",age);
    NSString *st = [arrayElement valueForKeyPath:@"st"];
    NSLog(@"st: %@",st);
    NSString *lf = [arrayElement valueForKeyPath:@"lf"];
    NSLog(@"lf: %@",lf);
    NSString *da = [arrayElement valueForKeyPath:@"da"];
    NSLog(@"da: %d",da);

    for(NSString *value in [arrayElement allValues]){
        NSLog(@"Found Value %@",value);

        label.text = value;
        [value release];
        [super release];

}
}
- (void)requestFailed:(ASIHTTPRequest *)request
{
    NSLog(@"Request failed");

}
-(void)dealloc {
    [super dealloc];
}


@end

все так же, я получаю значения, но когда я нажимаюполучить данные в приложении.это закрывается.Мне нужна помощь, пожалуйста.спасибо, я хочу, чтобы значения были размещены на этикетке

1 Ответ

0 голосов
/ 29 ноября 2011

Вам нужно будет проверить предоставленную ими документацию для входа в API. Скорее всего, может быть использован либо запрос POST, либо механизм аутентификации OAuth. Пожалуйста, попробуйте предоставить подробную информацию, чтобы получить надлежащую помощь. :)

...