miércoles, abril 20, 2011

Hacer post a una URL externa

En C# podemos utilizar el siguiente código para simular un post a una URL externa para, por ejemplo, saltarnos la página de login si conocemos los datos.


            string FormName = "loginForm";
            string Method = "post";
            string Url = "http://www.workshop-data.com/login.do";
 
            System.Web.HttpContext.Current.Response.Clear();
            System.Web.HttpContext.Current.Response.Write("");
            System.Web.HttpContext.Current.Response.Write(string.Format("", FormName));
            System.Web.HttpContext.Current.Response.Write(string.Format("", FormName, Method, Url));
            System.Web.HttpContext.Current.Response.Write(string.Format("""demouser""false"));
            System.Web.HttpContext.Current.Response.Write(string.Format("""username""xxx"));
            System.Web.HttpContext.Current.Response.Write(string.Format("""password""xxxxxx"));
            System.Web.HttpContext.Current.Response.Write("");
            System.Web.HttpContext.Current.Response.Write("");
            System.Web.HttpContext.Current.Response.End();
 
 
En este caso, estaríamos haciendo un post a www.workshop-data.com desde su pantalla de login pasándole un formulario con los datos pertinentes (usuario y password).

Para averiguar cómo se llama el formulario (en mi caso loginForm) y los campos, se puede utilizar Firebug (ver https://addons.mozilla.org/es-ES/firefox/addon/firebug/).

NOTA: Más info en http://www.c-sharpcorner.com/uploadfile/desaijm/asp.netposturl11282005005516am/asp.netposturl.aspx

No hay comentarios:

Publicar un comentario