Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Сети";
Текущий архив: 2004.12.12;
Скачать: [xml.tar.bz2];

Вниз

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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.48 MB
Время: 0.033 c
3-1100407797
lav
2004-11-14 07:49
2004.12.12
Как получить список запросов из базы MS Access


14-1100965079
Cerberus
2004-11-20 18:37
2004.12.12
О ценити дизайн


1-1101900521
genies
2004-12-01 14:28
2004.12.12
SOS, Help.


14-1101020589
Sour
2004-11-21 10:03
2004.12.12
SMTP и POP3 серверы


3-1100171384
Fyc
2004-11-11 14:09
2004.12.12
Проблемка с Table.FindNearest и русским тексом





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский