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

Вниз

html для отправки строки на сервер   Найти похожие ветки 

 
6136 ©   (2011-08-26 18:40) [0]

Здравствуйте,

воспользовался примером сервера с использованием компонента TIdTCPServer,
его свойства
DefaultPort 4444
Active true
имя приложения srv.exe
(сам пример ниже)

с telnet обмен проходит нормально:
ввожу: telnet 127.0.0.1 4444
отвечает:Type an integer and Enter
ввод: 4  (сервер принимает и в окошке memo1 сервера отображается "4")
отвечает: 4  squared is 16 и сообщает о разрыве соединения
----
пытаюсь отправить строку на этот же сервер со страницы index.html
srv.exe и index.html находятся в /interpub/wwwroot/

на ней размещаю:
<form action="127.0.0.1 4444" method="post">
 <input size="60" name="From">
 <p><input value="Отправить" type="submit"> </p>
 <p></p>
</form>

пробовал варианты action, например,
action="http://localhost/srv.exe"

в чем ошибка?
при нажатии кнопки в index.html сообщение о невозможности отобразить страницу.

Спасибо

procedure TForm1.IdTCPServer1Execute(AThread: TIdPeerThread);
var s: String;
   i: Integer;
begin
with AThread.Connection do
try
WriteLn("Type an integer and Enter");
s := ReadLn;
memo1.Lines.Add(s);
try
i := StrToInt(s);
WriteLn(s + " squared is " + IntToStr(i*i));
except
WriteLn(s + " is not an integer");
end;
finally
Disconnect;
end;  end;

добавил вывод поступающей строки в окошко TMemo

получил приложение
srv.exe
----


 
wicked ©   (2011-08-26 20:36) [1]

потому что telnet шлет в сокет сырые данные, которые читает твоя программа

а браузер использует для этого http протокол - http://ru.wikipedia.org/wiki/HTTP

поэтому, если хочешь посылать данные из браузера, тебе в программе нужно реализовать функциональность http сервера


 
6136 ©   (2011-08-26 23:34) [2]

спасибо,
с TIdHTTPServer что-то получилось,
данные, введенные в браузере на страничке index.html,
сервер получает и отображает в окошке,

неприятность: после нажатия кнопки ввода данных браузер вместо index.html пытается отобразить http://localhost:4444
4444 - порт, который я назначил серверу (приложение HTTPsrv.exe)

что нужно сделать, чтобы в браузере оставалась страничка index.html?


 
wicked ©   (2011-08-26 23:44) [3]

ну так пости свои данные на http://localhost:4444/index.html


 
6136 ©   (2011-08-27 10:17) [4]

не помогло, получается то же
правильно ли я понял?

в index.html исправил так:
<form action="http://localhost:4444/index.html" method="post">
 <input size="60" name="From">
 <p><input value="Отправить" type="submit"> </p>
 <p></p>
</form>


 
Медвежонок Пятачок ©   (2011-08-27 12:10) [5]

не помогло, получается то же

при нажатии кнопки в index.html сообщение о невозможности отобразить страницу.

Ну правильно. Страницу-то никто не сформировал и не отдал обратно.


 
6136 ©   (2011-08-27 12:53) [6]

где (в index.html или в в приложении сервера HTTPsrv.exe) и как именно указать, что после POST страница в браузере должна вернуться (или остаться?) та же, index.html, в которой вводилась строка для передачи методом POST?

index.html - html-стрница по умолчанию (загружается при наборе в браузере http://localhost)
физически index.html и серверное приложение HTTPsrv.exe размещаются в папке сервера с:\Inetpub\wwwroot

не могли бы вы привести строку кода (если это лишь строка), позволяющую вернуть в браузер ту же страницу index.html
или написать, что следует сделать
или где об этом почитать

чего-либо внятного по вопросу поиском разыскать не получилось


 
6136 ©   (2011-08-27 13:05) [7]

Спасибо, разобрался
в сервере в процедуре IdHTTPServer1CommandGet
добавил ResponseInfo.Redirect("http://localhost/index.html");


 
Anatoly Podgoretsky ©   (2011-08-27 14:47) [8]

> 6136  (27.08.2011 12:53:06)  [6]

Нигде, это решает сервер, а не клиент



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

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

Наверх




Память: 0.49 MB
Время: 0.008 c
15-1314592325
Дмитрий С
2011-08-29 08:32
2011.12.18
Целочисленное деление mysql и...


6-1248173569
Michael
2009-07-21 14:52
2011.12.18
smtp/pop3 без компонентов


15-1314736194
Юрий
2011-08-31 00:29
2011.12.18
С днем рождения ! 31 августа 2011 среда


15-1314476996
Юрий
2011-08-28 00:29
2011.12.18
С днем рождения ! 28 августа 2011 воскресенье


15-1314995392
Юрий
2011-09-03 00:29
2011.12.18
С днем рождения ! 3 сентября 2011 суббота