Você está aqui: C# ::: Namespace System.Net ::: HttpWebRequest |
Usando um objeto da classe HttpWebRequest para enviar dados a uma página PHP, JSP, ASP.NET, etc, usando o método POST a partir de suas aplicações C#Quantidade de visualizações: 6693 vezes |
Em algumas situações gostaríamos de enviar uma solicitação HTTP do tipo POST a uma página PHP, JSP, ASP.NET, etc, a partir de nossos programas C#. Para isso podemos usar um objeto da classe HttpWebRequest, do namespace System.Net. Para este exemplo eu mostrarei como enviar uma requisição POST para uma página PHP. Comece analisando o código para o documento somar.php: ---------------------------------------------------------------------- Precisa de ajuda? Chama no WhatsApp +55 (62) 98553-6711 (Osmar) Este código foi útil? Paga um cafezinho pra mim :-( PIX: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- <?php // obtém o primeiro valor $a = (int)$_POST["a"]; // obtém o primeiro valor $b = (int)$_POST["b"]; // vamos somar e mostrar o resultado $soma = $a + $b; echo "A soma dos dois números é: " . $soma; ?> Este código PHP não apresenta muitos segredos: obtemos dois números passados via POST, efetuamos a soma dos dois e escrevemos o resultado na página. Veja agora o código completo e comentado para a aplicação C#: ---------------------------------------------------------------------- Precisa de ajuda? Chama no WhatsApp +55 (62) 98553-6711 (Osmar) Este código foi útil? Paga um cafezinho pra mim :-( PIX: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- using System; using System.Text; using System.Net; using System.IO; using System.Web; namespace EstudosCSharp{ class Program{ static void Main(string[] args){ HttpWebRequest requisicao; HttpWebResponse resposta; // url da página que receberá a requisição POST string url = "http://www.arquivodecodigos.net/somar.php"; // dados a serem enviados // atenção: os parâmetros aguardados pela página PHP são // "a" e "b" string n1 = "20", n2 = "9"; string dados = "a=" + HttpUtility.UrlEncode(n1) + "&b=" + HttpUtility.UrlEncode(n2); StreamReader leitor; string resultado = ""; Stream streamResposta; Stream streamRequisicao; // stream de requisição // vamos criar a requisição requisicao = (HttpWebRequest)WebRequest.Create(url); // vamos definir o método da requisição requisicao.Method = "POST"; // já que é uma requisição POST, vamos ajustar o ContentType requisicao.ContentType = "application/x-www-form-urlencoded"; // vamos definir o comprimento dos dados sendo enviados requisicao.ContentLength = dados.Length; // vamos obter o stream de escrita streamRequisicao = requisicao.GetRequestStream(); // vamos escrever na requisição streamRequisicao.Write(Encoding.ASCII.GetBytes(dados), 0, dados.Length); // fechamos a requisição streamRequisicao.Close(); // e finalmente disparamos a requisição HTTP resposta = (HttpWebResponse)requisicao.GetResponse(); // vamos obter o stream de resposta streamResposta = resposta.GetResponseStream(); // obtemos o leitor de stream leitor = new StreamReader(streamResposta); // pegamos o resultado da requisição resultado = leitor.ReadToEnd(); // e exibimos o resultao Console.WriteLine(resultado); Console.Write("\nPressione uma tecla para continuar..."); Console.ReadKey(); } } } Ao executar o programa, teremos uma mensagem no console parecida com: A soma dos dois números é: 32 |
![]() |
Desafios, Exercícios e Algoritmos Resolvidos de C# |
Veja mais Dicas e truques de C# |
Dicas e truques de outras linguagens |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
1º lugar: Java |