Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.12.12;
Скачать: CL | DM;

Вниз

TidTCPClient   Найти похожие ветки 

 
Луарвик   (2004-09-30 08:57) [0]

А где есть инфа, о использовании компонента? И главный вопрос: как с его помощью отправить запрос Post?
Про idHTTP не говорите, потому что: http://delphimaster.net/view/6-1096368986/&web=1


 
Reindeer Moss Eater ©   (2004-09-30 11:08) [1]

with idTCPClient1 do
begin
 Host:="www.domain.com";
 Port:=80;
 Connect;
 Writeln("POST /somescript.cgi HTTP/1.0");
 Writeln("Content-Length: 29");
 Writeln;
 WriteLn("name=Луаврик&password=кирвауЛ&");
 Disconnect;
end;


 
Reindeer Moss Eater ©   (2004-09-30 11:13) [2]

Только Content-Length: 30


 
Луарвик   (2004-09-30 13:18) [3]


>  [2] Reindeer Moss Eater ©   (30.09.04 11:13)
> Только Content-Length: 30

Это почему?


 
Reindeer Moss Eater ©   (2004-09-30 13:22) [4]

Потому что у тебя ник такой.
И пароль.


 
Луарвик   (2004-09-30 13:25) [5]

Ага, пасибо!


 
Луарвик   (2004-09-30 13:36) [6]

Да, еще вопрос: Port это что? Он всегда один и тот же или нет? Тогда где его взять?


 
Луарвик   (2004-10-01 13:49) [7]

with Form1.idTCPClient1 do
begin
Host:="www.test3.ru";
Port:=80;
Connect;
Writeln("POST /script.php HTTP/1.0");
Writeln("Content-Length: 22");
Writeln;
WriteLn("text1=1234&text2=5678&");
Disconnect;
end;

Что не так? Не работает код!!!
Вот код скрипта:
<?
echo  $text1." ".$text2;
$file = fopen("base.txt", "w");
fputs ($file, $text1." ".$text2);
?>

Он должен сохранять в Base.txt переменные.


 
Reindeer Moss Eater ©   (2004-10-01 14:23) [8]

Этот код работает.
В чем можно легко убедиться написав в 10 строках свой веб сервер и записав в лог подробности приходящего на него запроса.

Этот код отправляет POST запрос.
Больше этот код ничего делать и не должен.
А то что он должен делать - он делает.


 
Луарвик   (2004-10-01 15:38) [9]

Я говорю, что скрипт должен записать в файл переменные. НО ОН НЕ ЗАПИСЫВАЕТ НИ ФИГА. Почему?


 
Reindeer Moss Eater ©   (2004-10-01 16:05) [10]

Сначала ты говорил что этот код не работает.

А то что скрипт не записывает, - так здесь может быть миллион причин.
1. Неполный заголовок HTTP запроса (У меня приведен пример минимально возможного)
2. Неправильный адрес ресурса на самом сервере
3. Неправильные имена параметров.
и так далее.


 
Reindeer Moss Eater ©   (2004-10-01 16:19) [11]

Если лень разбирать код html страницы с формой отправки данных для выявления имен параметров и адреса скрипта-назначения можно поступить следующим способом: пишем простейший http-прокси, который записывает в файл все приходящие на него запросы.
Указываем в ie его в качестве прокси и работаем со своим скриптом в ie.

После чего смотрим внутрь файла и видим там правильный запрос в чистом виде.


 
Луарвик   (2004-10-01 17:13) [12]


> А то что скрипт не записывает, - так здесь может быть миллион
> причин.
> 1. Неполный заголовок HTTP запроса (У меня приведен пример
> минимально возможного)
> 2. Неправильный адрес ресурса на самом сервере
> 3. Неправильные имена параметров.
> и так далее.

Ну 2 и 3 причины можно вычеркнуть , так как идентичная операция с IdHTTP проходит успешно.
Ладно попытаюсь простейший http-прокси замутить. Кстати там какой ваще компонент нужен?


 
Reindeer Moss Eater ©   (2004-10-01 17:20) [13]

TCPServer подойдет


 
Луарвик   (2004-10-01 21:01) [14]

Вощем взял idTCP сервер из примеров к indy. При соединениях в memo1 результаты вывожу так:
Protocol.lines.add(CommBlock.Command);
Protocol.lines.add("***");
Protocol.lines.add(CommBlock.MyUserName);
Protocol.lines.add("***");
Protocol.lines.add(CommBlock.Msg);
Protocol.lines.add("***");
Protocol.lines.add(CommBlock.ReceiverName);

CommBlock :TCommBlock
При работе с IE получил это:

OST /script.php HTTP/1.1
Accept: image/gif, image/x-xbitmap, image/jpeg, image/
gsarcade-launch, */*
Accept-Language: ru
Co
coding: gzip, deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)
Host: localhost
Conten
t
Content-Length: 33
Connection: Keep-Alive
Cache-Control: no-cache

text1=123&text2=456&Submit

С Оперой че-похожее. Когда свою прогу юзал, то не получил НИЧЕГО. Все это крайне странно...



Страницы: 1 вся ветка

Текущий архив: 2004.12.12;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.023 c
3-1100182085
}|{yk
2004-11-11 17:08
2004.12.12
Инвалидность объектов в Firebird


4-1099122248
Сигизмунд
2004-10-30 11:44
2004.12.12
Как нйти метку диска?


4-1099132569
sirin
2004-10-30 14:36
2004.12.12
восстановление файлов


14-1100809808
OneFragLeft
2004-11-18 23:30
2004.12.12
Про винты.


14-1101192348
NewDelpher
2004-11-23 09:45
2004.12.12
Есть ли защита от СМС-спама