Russian Qt Forum
Май 18, 2012, 18:51
Добро пожаловать,
Гость
. Пожалуйста,
войдите
или
зарегистрируйтесь
.
Вам не пришло
письмо с кодом активации?
1 час
1 день
1 неделя
1 месяц
Навсегда
Войти
Начало
Форум
WIKI (Вики)
FAQ
Помощь
Поиск
Войти
Регистрация
Russian Qt Forum
>
Forum
>
Qt
>
Работа с сетью
(Модератор:
Sergeich
) >
Post и get запросы, хедеры
Страниц: [
1
]
2
Вниз
« предыдущая тема
следующая тема »
Печать
Автор
Тема: Post и get запросы, хедеры (Прочитано 3808 раз)
Cowcancry
Гость
Post и get запросы, хедеры
«
:
Март 20, 2010, 23:16 »
Где можно про это поподробнее прочитать? И очень желательно с примерами, т.к. говорится 0 уровень в этом..
Записан
ecspertiza
Хакер
Offline
Сообщений: 630
С уважением, мастер конфетного цеха!
Re: Post и get запросы, хедеры
«
Ответ #1 :
Март 20, 2010, 23:25 »
Ты не поверишь
http://lmgtfy.com/?q=Http
вот рас
http://ru.wikipedia.org/wiki/HTTP
вот два
Записан
онлайн компилер
Cowcancry
Гость
Re: Post и get запросы, хедеры
«
Ответ #2 :
Март 21, 2010, 20:28 »
Это всё замечательно, но мне нужен простейший пример на Qt
Записан
SimpleSunny
Крякер
Offline
Сообщений: 366
Малевич
Re: Post и get запросы, хедеры
«
Ответ #3 :
Март 21, 2010, 20:50 »
ТЫ не поверишь, но в документации (QNetworkAccessManager)
Код:
QNetworkAccessManager *manager = new QNetworkAccessManager(this);
connect(manager, SIGNAL(finished(QNetworkReply*)),
this, SLOT(replyFinished(QNetworkReply*)));
manager->get(QNetworkRequest(QUrl("http://qt.nokia.com")));
Записан
"There must have been a moment at the beginning, where we could have said no. But somehow we missed it. Well, we'll know better next time." ©
Cowcancry
Гость
Re: Post и get запросы, хедеры
«
Ответ #4 :
Март 22, 2010, 00:44 »
Я конечно понимаю, что это весело поиздеваться... Но я читал это и вот что получается..
Когда я
Код:
#include <QNetworkAccessManager>
выскакивает : error C2440: '<function-style-cast>' : cannot convert from 'const char [20]' to 'QUrl'
error C2514: 'QNetworkRequest' : class has no constructors
НО если я добавляю
Код:
#include <QNetworkRequest>
10 ошибок вида : 1>: error LNK2019: unresolved external symbol "__declspec(dllimport) public: __thiscall QNetworkRequest::~QNetworkRequest(void)" (__imp_??1QNetworkRequest@@QAE@XZ) referenced in function "public: void __thiscall First::LoadSite(void)" (?LoadSite@First@@QAEXXZ)
Помогите разобраться...
Записан
pastor
Administrator
Джедай : наставник для всех
Offline
Сообщений: 2871
Re: Post и get запросы, хедеры
«
Ответ #5 :
Март 22, 2010, 00:59 »
Ты подключил сетевой модуль в своём pro-файле?
Цитировать
QT += network
Записан
Integrated Computer Solutions, Inc. (ICS)
http://www.ics.com/
Cowcancry
Гость
Re: Post и get запросы, хедеры
«
Ответ #6 :
Март 22, 2010, 15:35 »
Что за pro файл?
Я Компилю через VS2008
------
Спасибо сам нашёл ответ
))
«
Последнее редактирование: Март 22, 2010, 15:55 от Cowcancry
»
Записан
Cowcancry
Гость
Re: Post и get запросы, хедеры
«
Ответ #7 :
Март 22, 2010, 15:54 »
QNetworkAccessManager *manager = new QNetworkAccessManager(this);
connect(manager, SIGNAL(finished(QNetworkReply*)),
this, SLOT(replyFinished(QNetworkReply*)));
QNetworkReply *reply = manager->get(QNetworkRequest(QUrl("
http://qt.nokia.com
")));
В конце получается, вся информация хранится в reply, но как её можно вывести в Label например?
«
Последнее редактирование: Март 22, 2010, 16:42 от Cowcancry
»
Записан
ecspertiza
Хакер
Offline
Сообщений: 630
С уважением, мастер конфетного цеха!
Re: Post и get запросы, хедеры
«
Ответ #8 :
Март 22, 2010, 16:49 »
Кури маны дальше, у тебя есть слот replyFinished(QNetworkReply*) и в нем тебе нужно будет проверять не было ли ошибок при выполнении запроса и возвращения результата, в этом слоте в экземпляре класса QNetworkReply будет храниться все что тебе нужно, читай ассистент
Записан
онлайн компилер
Cowcancry
Гость
Re: Post и get запросы, хедеры
«
Ответ #9 :
Март 23, 2010, 17:09 »
Вот к примеру я хочу сделать программу для ручного голосования на l2top.ru Т.к тут используются все запросы, cookie..
Народ, подскажите как составить правильно post ... Где поля:
cc9dfecb
// Это поле имеет "как будто" каждый раз новое имя
name
referer
//http://l2top.ru/vote/3118/
sec_referer
40059b144bfc1cdac2e7f35669724998d23598d5
voteOk
ok
«
Последнее редактирование: Март 23, 2010, 19:25 от Cowcancry
»
Записан
Cowcancry
Гость
Re: Post и get запросы, хедеры
«
Ответ #10 :
Март 23, 2010, 22:45 »
Код:
void First::Send()
{
QNetworkAccessManager *man = new QNetworkAccessManager(this);
connect(man, SIGNAL(finished(QNetworkReply*)),this, SLOT(repFinish(QNetworkReply*)));
QNetworkRequest PostRequest;
PostRequest.setUrl((QUrl)"http://l2top.ru/vote/54/");
QString param = "referer=http%3A%2F%2Fl2top.ru%2Fvote%2F3118%2F&sec_referer=40059b144bfc1cdac2e7f35669724998d23598d5&voteOk=ok&f5c5f905="+ui.captchaLine->text()+"&name=Cowcancry";
QByteArray postz = param.toUtf8();
man->post(PostRequest,postz);
}
void First::repFinish(QNetworkReply* reply)
{
QString otvet;
switch (reply->error())
{
case 0: otvet = QString::fromUtf8(reply->readAll());
ui.myLabel -> setText(otvet);break;
default: ui.statusLabel->setText("Else Error");break;
}
reply->deleteLater();
}
Пытаюсь послать запрос с помощью функции Send, но т.к. в Label оно пытается отобразить страницу, видно что оно возвращает Error...
Записан
voronElf
Самовар
Offline
Сообщений: 150
Re: Post и get запросы, хедеры
«
Ответ #11 :
Март 24, 2010, 06:49 »
в слоте при ошибке из reply вытащи на лабельку номер и описание ошибки, понятнее должно стать.
QNetworkAccessManager для каждого запроса свой создавать не стоит, его один делают на все запросы (я полем класса его делаю)
Записан
Ищи пазитифф !!!
Cowcancry
Гость
Re: Post и get запросы, хедеры
«
Ответ #12 :
Март 24, 2010, 16:04 »
Я ошибся, ошибки как раз нету... Только я никак не могу понять, как ПРАВИЛЬНО получить капчу, ведь я обращаюсь на прямую к функциям getimg.php и 4na.php, которая возвращает рисунок...
И если я шлю post с ответом, то пишет что каптча не правильная...
Как правильно получить две капчи?
Записан
voronElf
Самовар
Offline
Сообщений: 150
Re: Post и get запросы, хедеры
«
Ответ #13 :
Март 25, 2010, 08:34 »
ну получаешь ты рисунок, а куда ты шлешь пост с ответом ? что это за ответ и откуда он взялся ? и в чем задача то именно здесь ? поподробнее ...
Записан
Ищи пазитифф !!!
Cowcancry
Гость
Re: Post и get запросы, хедеры
«
Ответ #14 :
Март 25, 2010, 16:28 »
Есть сайт с голосованием l2top.ru, но там двойная капча
Я делаю GET //http://l2top.ru/vote/54/ чтобы получить Cookie.
Потом делаю два GET'a с установленными куками, чтобы получить капчу...
Но когда я посылаю POST с ответом на капчу, мне возвращает что она не верна.
Меня смущает то, что при GET //http://l2top.ru/vote/54/ каждый раз новое поле для ввода ответа с капчи, и выглядить оно так:
Код:
<!--// <input name='2fed8414' type='text' value='' class='num2' maxlength='14'> //--><!--// <input name='ed5d65d5' type='text' value='' class='num2' maxlength='14'> //--><!--// <input name='a3c4b058' type='text' value='' class='num2' maxlength='14'> //--><input name='e73ea100' type='text' value='' class='num2' maxlength='14'>
Их там больше гораздо...
+Обращение к капчам идёт /getimg.php?"+Math.random()+", хотя я посылаю GET по /getimg.php?54 (к примеру)
Записан
Страниц: [
1
]
2
Вверх
Печать
« предыдущая тема
следующая тема »
Перейти в:
Пожалуйста, выберите назначение:
-----------------------------
Qt
-----------------------------
=> Вопросы новичков
=> Уроки и статьи
=> Установка, сборка, отладка, тестирование
=> Общие вопросы
=> Пользовательский интерфейс (GUI)
=> Qt Quick
=> Model-View (MV)
=> Базы данных
=> Работа с сетью
=> Многопоточное программирование, процессы
=> Мультимедиа
=> 2D и 3D графика
=> Печать
=> Интернационализация, локализация
=> QSS
=> XML
=> Qt Script, QtWebKit
=> ActiveX
=> Qt Embedded
=> Дополнительные компоненты
=> Кладовая готовых решений
=> Вклад сообщества в Qt
=> Qt-инструментарий
-----------------------------
Программирование
-----------------------------
=> Общий
=> С/C++
=> Алгоритмы
=> Базы данных
=> Разработка игр
-----------------------------
Компиляторы и платформы
-----------------------------
=> Linux
=> Windows
=> Mac OS X
=> Компиляторы
===> Visual C++
-----------------------------
Разное
-----------------------------
=> Новости
===> Новости Qt сообщества
===> Новости IT сферы
=> Говорилка
=> Юмор
=> Объявления
=> Архив
===> Программирование
=====> Python
===> Веб программирование
=====> PHP, PERL, CGI
Загружается...