powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Delphi 7 web сервер idHTTPserver, xml-фрагмент клиенту
13 сообщений из 13, страница 1 из 1
Delphi 7 web сервер idHTTPserver, xml-фрагмент клиенту
    #39603633
Марк Фабий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Help please!
Web-сервер реализован с пом idHTTPServer.
Получая get-запрос должен отправить xml-фрагмент клиенту.
Какие нужно установить параметры, что сделать , чтобы кусок xml текста нормально отобразился у клиента?
Пишу в обработке IdHTTPServer1CommandGet :
Код: pascal
1.
2.
3.
4.
5.
AResponseInfo.ContentText:=AResponseInfo.ContentText+'<?xml version="1.0" encoding="windows-1251" ?>';
AResponseInfo.ContentText:=AResponseInfo.ContentText+'<params>';
AResponseInfo.ContentText:=AResponseInfo.ContentText+'<param1>123</param1>';
AResponseInfo.ContentText:=AResponseInfo.ContentText+'<param2>345</param2>';
AResponseInfo.ContentText:=AResponseInfo.ContentText+'</params>';



А в браузере при получении ответа отображается 123345
А нужно конечно так:
Код: xml
1.
2.
3.
4.
5.
<?xml version="1.0" encoding="windows-1251" ?>
<params>
   <param1>123</param1>
   <param2>345</param2>
</params>



Модератор: Пользуйтесь тегом (кнопкой) SRC для оформления кода, пожалуйста.
...
Рейтинг: 0 / 0
Delphi 7 web сервер idHTTPserver, xml-фрагмент клиенту
    #39603642
Марк Фабий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Дополнение: выходит так в браузере Yandex.
в IE выходит нормально (сразу не проверил):

Код: xml
1.
2.
3.
4.
5.
<?xml version="1.0" encoding="windows-1251" ?> 
- <debt>
  <param1>123</param1> 
  <param2>345</param2> 
  </debt>



а на собственно клиенте (idHTTP) выходит в одну строку (не очень удобно - хотелось бы с переносом как в IE)
...
Рейтинг: 0 / 0
Delphi 7 web сервер idHTTPserver, xml-фрагмент клиенту
    #39603666
s62
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Марк Фабий,

В XML как таковом нет указаний, как его отображать в браузере или где-нибудь ещё. XML-документ хранит структурированные данные. Для указаний, как отображать XML в браузере, можно использовать CSS и XSLT. Если указания, как отображать XML, к документу не прикреплены, то браузеры обычно отображают дерево XML, так, как находят это нужным. В Firefox, например, появляется наверху вот такой текст:
С этим XML-файлом не связана ни одна таблица стилей. Ниже показано дерево элементов.
а ниже - дерево XML-документа.
Вы сами, судя по коду, формируете XML без переноса строк. Вот и получаете в idHTTP текст без переносов строк. Если хотите, чтобы переносы были, или сами добавляйте их, или отображайте сами так, чтобы новый тег был на новой строке, вне зависимости от наличия перевода строки. idHTTP ведь ничего не отображает, он просто выдает строку (String) как результат.
...
Рейтинг: 0 / 0
Delphi 7 web сервер idHTTPserver, xml-фрагмент клиенту
    #39603702
Марк Фабий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
s62,
Спасибо за отклик. С переносами строк такой же результат.
но есть всё-таки - RequestInfo.ContentType. (и с других серверов нормально отображается - иерархически)
...
Рейтинг: 0 / 0
Delphi 7 web сервер idHTTPserver, xml-фрагмент клиенту
    #39603714
Vizit0r
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ставить тогда что-то типа Fiddler4, и сравнивать пакеты "с других серверов" и свои.
...
Рейтинг: 0 / 0
Delphi 7 web сервер idHTTPserver, xml-фрагмент клиенту
    #39603716
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Марк Фабийно есть всё-таки - RequestInfo.ContentType

Осталось только понять какое отношение RequestInfo.ContentType имеет к Response и
протелепаптить что у тебя написано в ResponseInfo.ContentType. Уж не text/html ли?..
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Delphi 7 web сервер idHTTPserver, xml-фрагмент клиенту
    #39603741
Марк Фабий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dimitry Sibiryakov,

блин, да я перепутал - вместо ResponseInfo.ContentType в посте написал RequestInfo.ContentType.
и собственно вопрос - что вписать в ResponseInfo.ContentType, чтобы нормально было отображение xml в yandex-браузере?
...
Рейтинг: 0 / 0
Delphi 7 web сервер idHTTPserver, xml-фрагмент клиенту
    #39603745
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Марк Фабийсобственно вопрос - что вписать в ResponseInfo.ContentType, чтобы нормально было
отображение xml в yandex-браузере?

....и ты не поверишь, но это вопрос для форума на яндексе.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Delphi 7 web сервер idHTTPserver, xml-фрагмент клиенту
    #39603749
Марк Фабий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dimitry SibiryakovМарк Фабийсобственно вопрос - что вписать в ResponseInfo.ContentType, чтобы нормально было
отображение xml в yandex-браузере?

....и ты не поверишь, но это вопрос для форума на яндексе.

а я и не верю, ведь в FireFox тоже самое.
а ты поверишь? - вписал в ResponseInfo.ContentType значение 'xml' и всё стало нормально.
...
Рейтинг: 0 / 0
Delphi 7 web сервер idHTTPserver, xml-фрагмент клиенту
    #39606731
Марк Фабий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
нужно наверное 'text/xml'
...
Рейтинг: 0 / 0
Delphi 7 web сервер idHTTPserver, xml-фрагмент клиенту
    #39606824
s62
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Марк Фабий,

наверное да. Есть же стандартные mime-типы и с xml я увидел только это. К тому же xml - текстовый фомат, т.е. он как раз в разделе text/* по идее и должен быть.
https://ru.wikipedia.org/wiki/Список_MIME-типов
...
Рейтинг: 0 / 0
Delphi 7 web сервер idHTTPserver, xml-фрагмент клиенту
    #39607327
Василий №2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Марк Фабийчтобы нормально было отображение xml в yandex-браузере?
Вообще то, что ты называешь "нормальным" отображением (xml вида как в блокноте) - для браузера как раз ненормальное. Нормальное для браузера - это интерпретировать xml как xml и отображать соответственно либо его структуру в интерактивном виде, либо только текстовые значения (ведь никто не назовет "нормальным", если браузер вдруг начнет отображать теги html).
То есть если тебе нужно отображение в браузере 1:1 как пришло - тогда Content-type: plain/text. Но есть подозрение, что ты путаешь отображаемый браузером результат с переданным содержимым.
...
Рейтинг: 0 / 0
Delphi 7 web сервер idHTTPserver, xml-фрагмент клиенту
    #39607328
Василий №2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Василий №2
*text/plain конечно же
...
Рейтинг: 0 / 0
13 сообщений из 13, страница 1 из 1
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Delphi 7 web сервер idHTTPserver, xml-фрагмент клиенту
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]