Публикация входных данных с одной страницы на внешний веб-сервис и последующий рендеринг результирующего XML - PullRequest
0 голосов
/ 26 января 2011

Я новичок в Umbraco (v 4.5.2) и хотел бы знать, как я могу сделать следующее:

  1. Посетитель на странице вводит в текстовое поле доменное имя.
  2. Они бьют вернуться или нажать на кнопку изображения
  3. Я хочу, чтобы Umbraco разместил этот домен назвать страницу aspx, что я буду пиши на другом сайте.
  4. Это Затем обработчик вернет XML что я хочу, чтобы Umbraco рендерил через XSLT.

Я компетентен в c # и dotNet, но перед тем, как погрузиться и написать груз кода, мне было интересно, существует ли более простой способ сделать это?

Большое спасибо заранее

Jonathan

1 Ответ

2 голосов
/ 27 января 2011

Поскольку я понимаю проблему, вы хотите разработать веб-страницу, которая отправляет запрос на страницу на другом сайте, возвращает кучу XML и переводит этот XML в красивый HTML на странице, с которой вы делаете запрос.

При написании xslt в Umbraco у вас есть доступ к методам расширения umbraco.library, и одним из этих методов является GetXmlDocumentByUrl (строка Url), который позволяет извлекать внешние документы xml и работать с ними в xslt.

Итак, я бы создал страницу с небольшой формой, которая использует GET для запроса доменного имени, а затем обработал бы остальное в xslt

Ваш код будет выглядеть примерно так:

<xsl:variable name="domainName" value="umbraco.library:RequestQueryString('domain')" />
<xsl:variable name="resultDoc" value=umbraco.library:GetXmlDocumentByUrl(concat('http://domain.net/path/to/query?domain=', $domainName))" />
<xsl:apply-templates match="/">
<!-- XSLT that iterates over $resultDoc/result or something like that -->
</xsl:apply-templates>

С уважением, Джеспер Хауге

PS Для большого количества информации и более быстрого ответа обязательно посетите http://our.umbraco.org,, где вы найдете очень живой и дружелюбный форум для вопросов, подобных этим.

...