Metodo POST
Publicado por Victor Elizondo (2 intervenciones) el 13/10/2010 18:53:00
Buenos dias
Tengo una petición acerca del método POST:
Aquí tengo un código básico del método POST el cual esta en el ASP, todo del lado del cliente:
---------------------------------------------------------------------------------------------------------------------------
<form id="frmPrueba" runat="server" action="https://avicto.beer.php" method = "post" >
<div>
<INPUT TYPE="TEXT" NAME="NombreMens" /><br>
<INPUT TYPE="TEXT" NAME="PaisMens" /><br>
<INPUT TYPE="submit" id="boton" />
</div>
</form>
---------------------------------------------------------------------------------------------------------------------------
Entonces al correrlo si hace el POST y redirecciona a la página de https://avicto.beer.php
Lo que yo necesito es realizar esto pero por código del lado del sevidor, por Code Behind, de que al darle click al botón corriendo del lado del servidor me redireccione a esa página. Ya intenté previamente agregarles lo de runat = "server" a los textbox y botón de arriba, pero si hago eso NO FUNCIONA EL POST, simplemente no manda la información.
Tengo un código del lado del servidor para hacer ese POST, pero como lo que obtengo de respuesta de esa página se queda en una variable ( que es un string con todo el HTML embebido) y NO PUEDO REDIRECCIONARLO, se queda en mi localhost ( o sea, que me aparezca la respuesta en la pagina https://avicto.beer.php).
Les incluyo este código el cual esta dentro del evento LOAD:
--------------------------------------------------------------------------------------------------------------------------
string NombreMens = "Brenda Meza";
string PaisMens = "mejico";
string appURL = string.Empty;
appURL = "https://avicto.beer.php";
string strPostData = String.Format("NombreMens={0}&PaisMens={1}",
NombreMens, PaisMens);
// Setup the http request.
HttpWebRequest wrWebRequest = WebRequest.Create(appURL) as
HttpWebRequest;
wrWebRequest.Method = "POST";
//wrWebRequest.ContentLength = strPostData.Length;
wrWebRequest.ContentLength = System.Text.Encoding.UTF8.GetByteCount(strPostData);
wrWebRequest.ContentType = "application/x-www-form-urlencoded";
wrWebRequest.CookieContainer = new CookieContainer();
//byte[] bytes = Encoding.UTF8.GetBytes(strPostData);
// Post to the login form.
StreamWriter swRequestWriter = new
StreamWriter(wrWebRequest.GetRequestStream());
swRequestWriter.Write(strPostData);
//swRequestWriter.Write(bytes);
swRequestWriter.Close();
// Get the response.
HttpWebResponse hwrWebResponse =
(HttpWebResponse)wrWebRequest.GetResponse();
// Have some cookies.
CookieCollection ccCookies = hwrWebResponse.Cookies;
// Read the response
StreamReader srResponseReader = new
StreamReader(hwrWebResponse.GetResponseStream());
string strResponseData = srResponseReader.ReadToEnd();
srResponseReader.Close();
Response.Write(strResponseData);
-----------------------------------------------------------------------------------------------------------------------
En la última linea estoy escribiendo la respuesta HTML de la pagina sobre mi ASP, y precisamente de eso se trata, de que no se como REDIRECCIONAR ESO A https://avicto.beer.php Y EN DEFINITIVA TIENE QUE SER POR EL METODO POST.
Espero respuesta.
Saludos.
Tengo una petición acerca del método POST:
Aquí tengo un código básico del método POST el cual esta en el ASP, todo del lado del cliente:
---------------------------------------------------------------------------------------------------------------------------
<form id="frmPrueba" runat="server" action="https://avicto.beer.php" method = "post" >
<div>
<INPUT TYPE="TEXT" NAME="NombreMens" /><br>
<INPUT TYPE="TEXT" NAME="PaisMens" /><br>
<INPUT TYPE="submit" id="boton" />
</div>
</form>
---------------------------------------------------------------------------------------------------------------------------
Entonces al correrlo si hace el POST y redirecciona a la página de https://avicto.beer.php
Lo que yo necesito es realizar esto pero por código del lado del sevidor, por Code Behind, de que al darle click al botón corriendo del lado del servidor me redireccione a esa página. Ya intenté previamente agregarles lo de runat = "server" a los textbox y botón de arriba, pero si hago eso NO FUNCIONA EL POST, simplemente no manda la información.
Tengo un código del lado del servidor para hacer ese POST, pero como lo que obtengo de respuesta de esa página se queda en una variable ( que es un string con todo el HTML embebido) y NO PUEDO REDIRECCIONARLO, se queda en mi localhost ( o sea, que me aparezca la respuesta en la pagina https://avicto.beer.php).
Les incluyo este código el cual esta dentro del evento LOAD:
--------------------------------------------------------------------------------------------------------------------------
string NombreMens = "Brenda Meza";
string PaisMens = "mejico";
string appURL = string.Empty;
appURL = "https://avicto.beer.php";
string strPostData = String.Format("NombreMens={0}&PaisMens={1}",
NombreMens, PaisMens);
// Setup the http request.
HttpWebRequest wrWebRequest = WebRequest.Create(appURL) as
HttpWebRequest;
wrWebRequest.Method = "POST";
//wrWebRequest.ContentLength = strPostData.Length;
wrWebRequest.ContentLength = System.Text.Encoding.UTF8.GetByteCount(strPostData);
wrWebRequest.ContentType = "application/x-www-form-urlencoded";
wrWebRequest.CookieContainer = new CookieContainer();
//byte[] bytes = Encoding.UTF8.GetBytes(strPostData);
// Post to the login form.
StreamWriter swRequestWriter = new
StreamWriter(wrWebRequest.GetRequestStream());
swRequestWriter.Write(strPostData);
//swRequestWriter.Write(bytes);
swRequestWriter.Close();
// Get the response.
HttpWebResponse hwrWebResponse =
(HttpWebResponse)wrWebRequest.GetResponse();
// Have some cookies.
CookieCollection ccCookies = hwrWebResponse.Cookies;
// Read the response
StreamReader srResponseReader = new
StreamReader(hwrWebResponse.GetResponseStream());
string strResponseData = srResponseReader.ReadToEnd();
srResponseReader.Close();
Response.Write(strResponseData);
-----------------------------------------------------------------------------------------------------------------------
En la última linea estoy escribiendo la respuesta HTML de la pagina sobre mi ASP, y precisamente de eso se trata, de que no se como REDIRECCIONAR ESO A https://avicto.beer.php Y EN DEFINITIVA TIENE QUE SER POR EL METODO POST.
Espero respuesta.
Saludos.
Valora esta pregunta


0