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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Не нужный знак % в TidHTTP: Post, Помогите разобраться 
:(
    Опции темы
Teran
  Дата 25.1.2006, 13:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 590
Регистрация: 9.9.2005
Где: Украина, Запорожь е

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



Делаю так:
Код

procedure TForm1.Button2Click(Sender: TObject);
 var
   str:TStringList;
 begin
   str:=TStringList.Create;
     str.Add('username=test);
     str.Add('password=Test_');

     IdHTTP1.Post('http://..!!!!!!.ru/..!!./!.!!.php', str);

     str.Free;
end;


но в отправлаемом пакете вижу:

Код

POST http://..!!!!...!!!!m.ru:80/..!!./l..!!!.php HTTP/1.0
Content-Type: application/x-www-form-urlencoded
Content-Length: 123
Pragma: no-cache
Proxy-Connection: keep-alive
Host: !!!!!!!!!!.ru
Accept: text/html, */*
Accept-Language: ru
User-Agent: Mozilla/3.0 (compatible; Indy Library)

username=test&password=Test%5F               ---- Вот Здесь и ВОПРОС  :qstn 


Почему я отправляю 'password=Test_'
а уходит на самом деле 'password=Test%5F'
и как нужно писать правильно smile


--------------------
Ни цего не понимаю
PM MAIL ICQ   Вверх
Snowy
Дата 25.1.2006, 14:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 11363
Регистрация: 13.10.2004
Где: Питер

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



В HTTPOptions Выключи hoForceEncodeParams
PM MAIL   Вверх
Teran
Дата 25.1.2006, 15:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 590
Регистрация: 9.9.2005
Где: Украина, Запорожь е

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



Спасибо Snowy

Не подскажеш еще как мне организовать что-то типа Автоматической авторизации
делаю так:
Код

procedure TForm1.Button6Click(Sender: TObject);
var
str:TStringList;
begin

     str:=TStringList.Create;
      str.Add('referer=');
     str.Add('UserName=Teran');
     str.Add('PassWord=!!!!!');
     str.Add('tst=');
     str.Add('CookieDate=1');

     Memo1.Lines.Text := IdHTTP1.Post('http://forum.vingrad.ru/index.php?act=Login&CODE=01', str);
 
     str.Free;
 

end;


а после нажатия на кнопку прога выдает : Выскакивает сообщение:"HTTP/1.1 302 Found" -> нажимаю "Ok"
и в Мемо ничего нету
smile


--------------------
Ни цего не понимаю
PM MAIL ICQ   Вверх
Teran
Дата 25.1.2006, 16:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 590
Регистрация: 9.9.2005
Где: Украина, Запорожь е

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



Хочу сделать программку которая конектилась бы к форуму и получала .... например колличество непрочитанных писем

такое возможно сделать ????????


--------------------
Ни цего не понимаю
PM MAIL ICQ   Вверх
Snowy
Дата 25.1.2006, 16:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 11363
Регистрация: 13.10.2004
Где: Питер

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



А печенюшки у тебя включены? А TIdCookieManager прикручен?
Без печенюшек не получится.
Код

var
  str:TStringList;
  ms: TMemoryStream;
begin
  str:=TStringList.Create;
  ms := TMemoryStream.Create;
  str.Add('referer=');
  str.Add('UserName=Teran');
  str.Add('PassWord=!!!!!');
  str.Add('tst=');
  str.Add('CookieDate=1');
  try
    IdHTTP1.Post('http://..../', str, ms);
    ms.Position := 0;
    Memo1.Lines.LoadFromStream(ms);
  finally
    ms.Free; str.Free;
  end;
end;

PM MAIL   Вверх
Teran
Дата 25.1.2006, 16:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 590
Регистрация: 9.9.2005
Где: Украина, Запорожь е

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



расскажи пожалуйста поподробней кто такие эти
Цитата(Snowy @ 25.1.2006, 16:21 Найти цитируемый пост)

печенюшки


Цитата(Snowy @ 25.1.2006, 16:21 Найти цитируемый пост)

А TIdCookieManager прикручен?

а куда его вставлять ???


--------------------
Ни цего не понимаю
PM MAIL ICQ   Вверх
Snowy
Дата 25.1.2006, 16:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 11363
Регистрация: 13.10.2004
Где: Питер

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



Кидаешь на форму, а у IdHTTP1 назначаешь его, как Intercept.
Цитата(Teran @ 25.1.2006, 16:30 Найти цитируемый пост)
расскажи пожалуйста поподробней кто такие эти

Cookies

Цитата(Teran @ 25.1.2006, 16:30 Найти цитируемый пост)
TIdCookieManager

Управляет печенюшками.
Он за тебя будет отдавать печенюшки сервену и сохранять новые.
PM MAIL   Вверх
Teran
Дата 25.1.2006, 16:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 590
Регистрация: 9.9.2005
Где: Украина, Запорожь е

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



Цитата(Snowy @ 25.1.2006, 16:41 Найти цитируемый пост)

Кидаешь на форму, а у IdHTTP1 назначаешь его, как Intercept.


закинул на форму IdCookieManager1 (Действительно похожа на печенюшку)
привязал IdHTTP1 с IdCookieManager1 свойством CookieManager


а к Intercept не хочет ничего вязатся??? smile


--------------------
Ни цего не понимаю
PM MAIL ICQ   Вверх
Snowy
Дата 25.1.2006, 18:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 11363
Регистрация: 13.10.2004
Где: Питер

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



Ну значит я напутал. Главное, что привязал.
А версия Indy у тебя какая?
PM MAIL   Вверх
Teran
Дата 25.1.2006, 18:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 590
Регистрация: 9.9.2005
Где: Украина, Запорожь е

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



которая в Delphi 7 находится

так что просто привязать и все?
больше никаких действий делать не надо???


--------------------
Ни цего не понимаю
PM MAIL ICQ   Вверх
Snowy
Дата 25.1.2006, 18:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 11363
Регистрация: 13.10.2004
Где: Питер

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



Нужно сделать его Active. И все.
Для этого он и нужен, чтобы руками больше ничего не делать.
PM MAIL   Вверх
Teran
Дата 25.1.2006, 19:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 590
Регистрация: 9.9.2005
Где: Украина, Запорожь е

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



интересная проблема
пытаюся залогинится на Vingrad (по твоему коду)

но когда делаю POST на http://forum.vingrad.ru/index.php?act=Login&CODE=01
и набираю пароль правильно выскакивает сообщение :"HTTP/1.1 302 Found" и глючит сам форум

а когда неправильно в мемо -> страница авторизации


--------------------
Ни цего не понимаю
PM MAIL ICQ   Вверх
Snowy
Дата 25.1.2006, 19:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 11363
Регистрация: 13.10.2004
Где: Питер

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



Попробуй переключить ProtocolVersion на pv1_0
Добавлено @ 19:28
Я по этому же коду получаю страницу ошибки.
И не удивительно - пароль не "!!!!!" smile
Добавлено @ 19:33
Все. Понял в чем проблема.
При корректном входе подгружается главная страница.
А в ней очень большой размер.
Выставь параметр MaxLineAction в maSplit.
PM MAIL   Вверх
Teran
Дата 25.1.2006, 19:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 590
Регистрация: 9.9.2005
Где: Украина, Запорожь е

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



Делаю по этому коду:
Код

var
  str:TStringList;
  ms: TMemoryStream;
begin
  str:=TStringList.Create;
  ms := TMemoryStream.Create;
  str.Add('referer=');
  str.Add('UserName=Teran');
  str.Add('PassWord=!!!!!');
  str.Add('tst=');
  str.Add('CookieDate=1');
  try
    IdHTTP1.Post('http://forum.vingrad.ru/index.php?act=Login&CODE=01', str, ms);
    ms.Position := 0;
    Memo1.Lines.LoadFromStream(ms);
  finally
    ms.Free; str.Free;
  end;


но логинится не хочет(Пароль пишу правильный)

а у тебя получилось????




--------------------
Ни цего не понимаю
PM MAIL ICQ   Вверх
Snowy
Дата 25.1.2006, 19:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 11363
Регистрация: 13.10.2004
Где: Питер

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



И HandleRedirect поставь в true
Добавлено @ 19:41
Цитата(Teran @ 25.1.2006, 19:39 Найти цитируемый пост)
а у тебя получилось????

Угу.
PM MAIL   Вверх
Страницы: (3) Все [1] 2 3 
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Сети"
Snowy
Poseidon
MetalFan

Запрещено:

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

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

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

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

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


 




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


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

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