Responder XML en ASP

10/Oct/2009 ASP , , ,

Normalmente, las páginas ASP tienen como respuesta una salida de texto que conforma una página web o parte de ella. Incluso puede ser que usen la página web para redirigirnos a otra URL. Esta salida, la mayoría de las veces, es texto puro y duro, o bien aderezado con etiquetas HTML. Pero existe la posibilidad de que la respuesta que genere el ASP sea de otro tipo: código XML, una imagen,...

En el caso de que queramos devolver código XML deberemos de informar al navegador o al programa que esta esperando la respuesta de la página ASP que la respuesta generada es del tipo texto XML. Para ello utilizaremos el conten-type de la cabecera de respuesta. El content-type lo podemos especificar indicando que el tipo de contenido es igual a "text/xml". Esto lo podemos realizar mediante la propiedad Response.ContentType

  1. Response.ContentType="text/xml"

Posteriormente, el contenido que devolmamos deberá de ser un fichero XML válido. Para crear el fichero nos valdrá el utilizar el objeto Response e ir volcando diferentes etiquetas con una cierta lógica.

  1. Response.Write("<datos><nombre edad='31'>Victor</nombre></datos>")

Aunque no es necesario, es muy recomendable devolver la etiqueta XML donde indicamos la versión XML que estamos utilizando, así como la codificación usada.

  1. Response.Write("<?xml version='1.0' encoding=utf-8?>")

Vemos que responder XML en ASP es muy sencillo y que lo podemos hacer con unas pocas líneas. Utilidades hay muchas, entre ellas, por ejemplo, crear páginas que respondan a peticiones AJAX,... Y si te gusta más Java que ASP, puedes crear un Servlet que devuelva XML.

¿Qué casos de uso se te ocurren para tener que responder XML en ASP?