martes, noviembre 22, 2005

ServerXMLHttp

Hay varios componentes que se encargan de bajar información en la web desde páginas ASP. Uno de ellos está en las distribuciones MSXML de Microsoft a partir de la versión 3.0, y es el objeto ServerXMLhttp. Éste permite hacer peticiones a cualquier servidor y recuperar posteriormente la información que nos transmite. Notar, que su uso es seguro en servicios (frente a xmlhttp que no debe puesto que utiliza wininet). Este componente usado en una página ASP nos permite recuperar información desde cualquier servidor o bien enviarla a través de un post a un formulario. Por ejemplo, para bajar un fichero podría usarse este código
set xmlhttp=Server.CreateObject("MSXML2.ServerXmlHTTP")
xmlhttp.open "GET","http://url/fichero.gif"
xmlhttp.send()
bindata = xmlhttp.responseBody
' Graba el fichero
set adodb=Server.CreateObject("ADODB.Stream")
adodb.Open
adodb.Type = 1
adodb.Write bindata
adodb.SaveToFile "fichero.gif",2

(hacer notar el uso d ADODB.Stream para poder grabar el fichero binario. Las posibilidades son interesantes, así como las implicaciones de seguridad que tienen (sustituyase la imagen por netcat y use su imaginación ....)

Tecnorati tags: serverxmlhttp,asp

No hay comentarios: