Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 27.10.2014, 18:46   #1
Nugrom
Форумчанин
 
Регистрация: 14.09.2014
Сообщений: 118
По умолчанию Отправка данных средствами IdHttp

Всем привет.
Есть сайт.
На нем одно текстовое поле

Код:
<input name="ctl00$BodyPlaceholder$PaymentAddressTextbox" type="text" id="BodyPlaceholder_PaymentAddressTextbox" class="payment-address" placeholder="Email or bitcoin wallet address">
И одна кнопка:

Код:
<input type="submit" name="ctl00$BodyPlaceholder$SignInButton" value="sign in" onclick="javascript:WebForm_DoPostBackWithOptions(new WebForm_PostBackOptions(&quot;ctl00$BodyPlaceholder$SignInButton&quot;, &quot;&quot;, true, &quot;&quot;, &quot;&quot;, false, false))" id="BodyPlaceholder_SignInButton" class="submit-button">
Мне нужно заполнить поле и нажать на кнопку. Вот что показал снифер
Снимок.jpg

Там где закрашено красным - это текст из этого текстового поля на сайте, которое мне нужно заполнить.

Я пробовал просто создать TStringlist, заполнить его и отправить, но когда я вывожу ответный HTML от POST запроса, то видно, что там не авторизованная страница, а главная страница сайта.
Вот сайт: http://moonbit.co.in/

Вот мой код:
Код:
dannie.Clear;
    dannie.Add('ctl00$BodyPlaceholder$PaymentAddressTextbox='+memo2.Lines[1]);
    dannie.Add('ctl00$BodyPlaceholder$SignInButton=sign in');
    Memo3.Clear;
    Memo3.Lines.Add(http.Post('http://moonbit.co.in/', dannie));
Можете подсказать или помочь сделать?
Nugrom вне форума Ответить с цитированием
Старый 27.10.2014, 19:09   #2
indexx
Заблокирован
 
Регистрация: 12.09.2014
Сообщений: 544
По умолчанию

Цитата:
Можете подсказать
Подсказать что? Вопроса в упор не вижу
indexx вне форума Ответить с цитированием
Старый 27.10.2014, 19:13   #3
Nugrom
Форумчанин
 
Регистрация: 14.09.2014
Сообщений: 118
По умолчанию

Можете подсказать что я делаю не так? В чем моя ошибка? Как сделать правильнее?
Nugrom вне форума Ответить с цитированием
Старый 27.10.2014, 19:22   #4
indexx
Заблокирован
 
Регистрация: 12.09.2014
Сообщений: 544
По умолчанию

Цитата:
Можете подсказать что я делаю не так?
Люди сначала учаться, а потом практикуются, а ты делаешь наоборот
Цитата:
В чем моя ошибка?
Ну давай поиграем в угадай мелодию. Параметры, которые ты пихаешь в POST ты откуда берёшь? Ответ дай кодом. Почему в приведённом коде не передаются остальные параметры?
indexx вне форума Ответить с цитированием
Старый 27.10.2014, 19:26   #5
Nugrom
Форумчанин
 
Регистрация: 14.09.2014
Сообщений: 118
По умолчанию

Код:
var
dannie : tstringlist;
...
dannie := tstringlist.create;
dannie.Add('ctl00$BodyPlaceholder$PaymentAddressTextbox='+memo2.Lines[1]);
dannie.Add('ctl00$BodyPlaceholder$SignInButton=sign in');
http.Post('http://moonbit.co.in/', dannie);
Вы имеете ввиду, что нужно абсолютно все параметры, которые видно на скрине сниффера, передавать, а не только два из них?
Nugrom вне форума Ответить с цитированием
Старый 27.10.2014, 19:31   #6
indexx
Заблокирован
 
Регистрация: 12.09.2014
Сообщений: 544
По умолчанию

Nugrom А ты как хотел? Передать что хочешь, а на остальное забить? Ну в итоге сервер на тебя забил. Вопросы:
1) Что такое парсинг, знаешь?
2) Что с куками?
indexx вне форума Ответить с цитированием
Старый 27.10.2014, 19:42   #7
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Э-э-э... тут есть маленькая пробелма: Вот то что на скрине это состояние "компонентов" ASP страницы. И формируются они скорее всего а сервере. Если ты упустишь какую-нибудь мелочь из данных этих состояний модуль, отвечающий за эту страницу на сервере либо даст ошибку либо, если проггер был криворук раскрошится, уложив IIS.
Ты уж лучше скажи зачем тебе это надо. Ибо передать остальные параметры можно, но ведь их еще нужно выковырять из страницы.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 27.10.2014, 19:45   #8
Nugrom
Форумчанин
 
Регистрация: 14.09.2014
Сообщений: 118
По умолчанию

1)Получение ответа от сервера на запрос?
2)Даже не знаю. просто создать IdCookieManager и подключить его к TIdHttp? или нужно еще вручную парсить куки, и применять их как-то? Как именно их парсить, и применять? Применять к компоненту Tidhttp или IdCookieManager ?

Цитата:
Ты уж лучше скажи зачем тебе это надо.
Мне нужно залогиниться на этом сайте

Сейчас попробую вытаскивать нужные данные из страницы, перед отправкой их на сервер. У меня пока только один вопрос. Что с куками? Я так и не понял, подключать нужно и как?

Последний раз редактировалось Stilet; 27.10.2014 в 20:49.
Nugrom вне форума Ответить с цитированием
Старый 27.10.2014, 20:45   #9
Nugrom
Форумчанин
 
Регистрация: 14.09.2014
Сообщений: 118
По умолчанию

Такс. Я нашел те места, откуда вытягивать эти все данные, и у меня появился вопрос. Если посмотреть на скрин, то видно, что 3 значения пустые. мне их передавать пустыми, или вообще не передавать?
Вопрос с куками остается.
Nugrom вне форума Ответить с цитированием
Старый 27.10.2014, 20:51   #10
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Да, лучше передавать пустыми.
ЧесТТно признаюсь - никогда не ломал сайты такие, потому мой совет будет только одним: Не делай так
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
idHttp и отправка КУКИ в сервер Pcrepair Общие вопросы Delphi 6 12.05.2013 21:05
idhttp ssl авторизация отправка данных post tauxxx Работа с сетью в Delphi 3 31.05.2012 14:17
Отправка письма с сайта UCOZ (idHTTP.Post) ProGramer86 Работа с сетью в Delphi 0 20.01.2012 09:53
Отправка сообщения на почту средствами Qt iukash Qt и кроссплатформенное программирование С/С++ 0 27.04.2011 12:27
SMTP отправка месаги средствами Си vadakoff C/C++ Сетевое программирование 1 09.11.2010 16:16