Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 05.01.2015, 21:06
Slechtvalk_ Slechtvalk_ вне форума
Прохожий
 
Регистрация: 05.01.2015
Сообщения: 2
Версия Delphi: Delphi XE5
Репутация: 10
По умолчанию Проблемы с TIdHTTPServer

Здравствуйте, у меня возникала странная проблема:
Пытаюсь сделать сервер на основе компонента TIdHTTPServer.
Настройки компонента не менял, кроме порта.
В событии IdHTTPServer1CommandGet написал следующее:
Код:
procedure TForm1.IdHTTPServer1CommandGet(AContext: TIdContext;
  ARequestInfo: TIdHTTPRequestInfo; AResponseInfo: TIdHTTPResponseInfo);
begin
  showmessage ('1');
end;
Проблема в том, что при переходе по ссылке localhost:11111 сообщение выводится 3 (!!!) раза вместо 1. Причем сначала сообщение выводится нормальным шрифтом, а потом 2 раза жирным.
Помимо сообщений, пробовал выводить в ListBox параметры запроса. Вот что получается в таком случае:
Код:
procedure TForm1.IdHTTPServer1CommandGet(AContext: TIdContext;
  ARequestInfo: TIdHTTPRequestInfo; AResponseInfo: TIdHTTPResponseInfo);
begin
  Log ('Входящий запрос от: ' + ARequestInfo.RemoteIP + #10#13 + 'Параметры запроса: '
  + ARequestInfo.UnparsedParams);
end;
А в ListBox пишет следующее:
Код:
05.01.2015 21:05:00:   Входящий запрос от: 127.0.0.1
Параметры запроса: a=a&b=123
05.01.2015 21:05:01:   Входящий запрос от: 127.0.0.1
Параметры запроса: 
05.01.2015 21:05:01:   Входящий запрос от: 127.0.0.1
Параметры запроса: 

Ах да, еще если отсылать запросы, когда сервер выключен (в смысле переходить по ссылке в браузере), то при включении сервера запрос все-таки приходит. Но это ведь так и должно быть, да?

Из браузеров проверял хром и файрфокс, без разницы вообще.

В чем может быть проблема???
Ответить с цитированием
  #2  
Старый 07.01.2015, 10:03
Аватар для Alex_4444
Alex_4444 Alex_4444 вне форума
Прохожий
 
Регистрация: 22.12.2014
Сообщения: 14
Версия Delphi: XE5
Репутация: 50
По умолчанию

Можно ли увидеть весь код?
__________________
Самые сильные программисты были на заре компьютеризации.
И чем дольше я программист, тем больше это понимаю - мы до сих пор поддерживаем их код...
Ответить с цитированием
  #3  
Старый 07.01.2015, 10:27
Аватар для NumLock
NumLock NumLock вне форума
Let Me Show You
 
Регистрация: 30.04.2010
Адрес: Северодвинск
Сообщения: 5,426
Версия Delphi: 7, XE5
Репутация: 59586
По умолчанию

ну так смотри что браузер запрашивает:
Код:
ARequestInfo.Command+ARequestInfo.Document+ARequestInfo.Params.Text
Цитата:
/
Цитата:
/favicon.ico
__________________
Пишу программы за еду.
__________________
Ответить с цитированием
  #4  
Старый 07.01.2015, 17:11
Slechtvalk_ Slechtvalk_ вне форума
Прохожий
 
Регистрация: 05.01.2015
Сообщения: 2
Версия Delphi: Delphi XE5
Репутация: 10
По умолчанию

Спасибо Всем, решил проблему вот так

Код:
procedure TFormAdminPanel.IdHTTPServer1CommandGet(AContext: TIdContext;
  ARequestInfo: TIdHTTPRequestInfo; AResponseInfo: TIdHTTPResponseInfo);
begin
  if ARequestInfo.UnparsedParams.Length > 0 then
  begin
      // тут уже код
  end;
end;

Работает нормально, так как мне все равно только запросы с параметрами надо обрабатывать.
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 03:11.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter