Разбор веб-страницы после входа в приложение iOs

0

Я пытаюсь проанализировать веб-сайт, который после входа в приложение iOS, разбор тегов HTML отлично работает с hpple, но я не знаю, как "пройти" через Login.

Спасибо!

Теги:
iphone
parsing
hpple

1 ответ

1

Чтобы войти на сайт, вам необходимо отправить запрос POST. AFNetworking упрощает это.

С AFNetworking:

AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager];
manager.responseSerializer = [AFHTTPResponseSerializer serializer];
NSDictionary *parameters = @{@"usernameKey": @"theUsernameForTheWebsite",@"passwordKey": @"thePasswordForWebsite"};
[manager POST:@"http://example.com/loginpage.php" parameters:parameters success:^(AFHTTPRequestOperation *operation, id responseObject) {
    NSLog(@"Response: %@", responseObject);
} failure:^(AFHTTPRequestOperation *operation, NSError *error) {
    NSLog(@"Error: %@", error);
}];

Чтобы адаптировать приведенный выше пример для вашего использования, посмотрите на этот пример HTML-форму:

<form class="form-horizontal" action="" method="post">
            <div class="form-group">
                <label for="inputUsername" class="col-lg-2 col-md-2 control-label">Username</label>
                <div class="col-lg-4 col-md-4">
                    <input type="text" class="form-control" id="inputUsername" placeholder="Username" name="inputUsername">
                </div>
            </div>
            <div class="form-group">
                <label for="inputPassword" class="col-lg-2 col-md-2 control-label">Password</label>
                <div class="col-lg-4 col-md-4">
                    <input type="password" class="form-control" id="inputPassword" name="inputPassword" placeholder="Password">
                </div>
            </div>
            <div class="form-group">
                <div class="col-md-offset-2 col-lg-10">
                    <button type="submit" class="btn btn-primary">Sign in</button>
                </div>
            </div>
        </form>

Атрибут action в элементе <form> будет иметь относительный URL-адрес в том месте, где вам нужно отправить запрос на отправку. ("" в этом идет на текущую страницу, на которой есть эта форма). Обратите внимание на пример атрибута name на элементах <input>. Этот атрибут будет ключом к использованию в parameters NSArray для пароля имени пользователя и пароля.

После входа в систему файлы cookie будут установлены и обработаны автоматически, и затем вы сможете использовать AFNetworking для отправки дополнительных запросов GET для получения страниц, требующих входа в систему.

Обратите внимание, что в этом примере используется AFNetworking 2.0 (выпущенный сегодня, я считаю).

  • 0
    И как я могу получить ответ в формате HTML? Спасибо 4 всем
  • 0
    @ user2824788 responseObject будет содержать объект NSData. Получите строку с помощью [NSString stringWithUTF8String:responseData.bytes]

Ещё вопросы

Сообщество Overcoder
Наверх
Меню