Модераторы: Snowy, Poseidon, MetalFan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Грамотно составить POST 
:(
    Опции темы
Koyan
Дата 10.7.2008, 13:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 4
Регистрация: 18.6.2007

Репутация: нет
Всего: нет



Задача програмно пройти логин и пас(они известны) и войти на следующую страницу.
Перечитал все темы, попробовал лес вариантов 0 эмоций, сервер не найден и тп  smile 


HTML стартовой странички:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN""http://www.w3.org/TR/html4/loose.dtd"><html><head><title>BMR (Kieback&amp;Peter)</title><meta http-equiv="content-type" content="text/html; charset=UTF-8">
...
...
</head><body class="std"><div class="hg"><div class="dg"><img class="logo" src="/l.gif">
<div class="nav"></div><div class="tln"></div>
<div class="tlh">Веб-сервер BMR</div><div class="tlt"></div>
<div class="tgl"><form action="/bmrlogin.html" method="post">
<table class="lg"><tr><td align="right" class="tabshort">Пользователь</td>
<td align="left"><select size="1" name="usr" length="10"><option value="0">Пользователь&nbsp;0</option><option value="1">Пользователь&nbsp;1</option><option value="2">Пользователь&nbsp;2</option><option value="3">Пользователь&nbsp;3</option></select></td></tr>
<tr><td align="right" class="tabshort">Код доступа</td><td align="left">
<input type="password" name="pwd" size="10" maxlength="20" value="" class="lg"/></td>
</tr><tr><td>&nbsp;</td><td class="tablong" align="right"><input type="submit" value="Войти в систему"></td></tr></table></form><div class="lg">1


На логине стоит ниспадающий список, остальное стандартно....
PM MAIL   Вверх
Koyan
Дата 10.7.2008, 15:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 4
Регистрация: 18.6.2007

Репутация: нет
Всего: нет



Отснифил POST

POST /bmrlogin.html HTTP/1.1
User-Agent: Opera/9.21 (Windows NT 5.1; U; ru)
Host: 192.168.00.97
Accept: text/html, application/xml;q=0.9, application/xhtml+xml, image/png, image/jpeg, image/gif, image/x-xbitmap, */*;q=0.1
Accept-Language: ru-RU,ru;q=0.9,en;q=0.8
Accept-Charset: iso-8859-1, utf-8, utf-16, *;q=0.1
Accept-Encoding: deflate, gzip, x-gzip, identity, *;q=0
Referer: http://192.168.00.97/bmrlogin.html
Connection: Keep-Alive, TE
TE: deflate, gzip, chunked, identity, trailers
Content-Length: 14
Content-Type: application/x-www-form-urlencoded

usr=3&pwd=2460

Не понятно TE и HTTP/1.1 подставлять

PM MAIL   Вверх
Alkash
Дата 10.7.2008, 15:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


коллекционер жизни
**


Профиль
Группа: Участник
Сообщений: 516
Регистрация: 5.7.2004
Где: /

Репутация: нет
Всего: нет



А IdHTTP юзать - не?


--------------------
Подпись >> /dev/null
PM MAIL ICQ MSN   Вверх
SneG0K
Дата 10.7.2008, 17:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Max Mara
***


Профиль
Группа: Завсегдатай
Сообщений: 1887
Регистрация: 1.12.2007
Где: Wis Dells

Репутация: 2
Всего: 54



Та отправь ты уже как нибуть этот пост. Хоть через тот же IdTCP. 
PM WWW Skype   Вверх
Koyan
Дата 11.7.2008, 09:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 4
Регистрация: 18.6.2007

Репутация: нет
Всего: нет



Да собственно через IdHTTP я и посылаю(D2007, XP)
один из вариантов(дело происходит в локалке):


procedure TForm1.Button1Click(Sender: TObject);
var
LoginInfo: TStrings;
Response: TStringStream;
begin
LoginInfo := TStringList.Create;
Response := TStringStream.Create('');
LoginInfo.Clear;
LoginInfo.Add('usr=3');
LoginInfo.Add('pwd=2460');
IdHTTP1.Host:='192.168.0.99';
IdHTTP1.Post('/bmrlogin.http',LoginInfo,Response);
Memo1.Clear;
Memo1.Lines.Add(Response.DataString);
Response.Free;
LoginInfo.Free;
end;

в снифе 0 эмоций.....

Добавлено через 14 минут и 11 секунд
 smile  Как не пробую сокет ерор и все тут.
Пробовал через HTTPReqResp1 post летит куда надо и в ответ код страницы авторизации.... Но как туда пас лог и все остальное.... не понятно
PM MAIL   Вверх
aktuba
Дата 11.7.2008, 16:42 (ссылка) |    (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


Смышленный
***


Профиль
Группа: Завсегдатай
Сообщений: 1915
Регистрация: 24.4.2006
Где: Планета Земля

Репутация: 9
Всего: 38



Цитата(Koyan @  11.7.2008,  10:23 Найти цитируемый пост)
dHTTP1.Host:='192.168.0.99';
IdHTTP1.Post('/bmrlogin.http',LoginInfo,Response);

 smile это что такое????


--------------------
user posted image
PM MAIL WWW Skype   Вверх
Koyan
Дата 11.7.2008, 17:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 4
Регистрация: 18.6.2007

Репутация: нет
Всего: нет



Так я пост отправляю, похож 1 в 1 с оригинальным..... но сервер возвращает только стартовую страницу в чем трабола..........


procedure TForm1.Button1Click(Sender: TObject);
var
fm:TStringList;
begin
fm:=TStringList.Create;
try
fm.Values['usr']:=edit1.Text;
fm.Values['pwd']:=edit2.Text;
memo1.text:=idhttp1.Post('http://192.168.0.97/bmrlogin.html',fm);
finally
fm.Free;
end;

end;

Подскажите пожалуйста :
Перед пост запросом не должена ли моя прога отправить GET запрос или чтонибуть подобное;
и как быть с  архивированием gzip, deflate..... может в них засада???

PM MAIL   Вверх
MetalFan
Дата 11.7.2008, 21:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Аццкий Сотона
****


Профиль
Группа: Комодератор
Сообщений: 3815
Регистрация: 2.10.2006
Где: Moscow

Репутация: 14
Всего: 128



Цитата(Koyan @  11.7.2008,  17:21 Найти цитируемый пост)
Так я пост отправляю, похож 1 в 1 с оригинальным.....

чудес не бывает, значит не 1 в 1.


--------------------
There are always someone smarter than you...
PM MAIL   Вверх
sai_NT
Дата 14.7.2008, 15:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 72
Регистрация: 8.8.2007

Репутация: 2
Всего: 3



Не забывай о поле Referer HTTP запроса к серверу. Некоторые серваки не отдают "нормального" (нужного для тебя) ответа, если это поле пустое или левое.

И еще. Проснифай теперь тот запрос, который прогой передаешь и обрати внимание на: Connection, Content-Type
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Сети"
Snowy
Poseidon
MetalFan

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делится вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи

Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Snowy, Poseidon, MetalFan.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Сети | Следующая тема »


 




[ Время генерации скрипта: 0.0454 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.