Como simular a solicitação de postagem HTTP do navegador e a captura resultam em C#

StackOverflow https://stackoverflow.com/questions/2071321

  •  20-09-2019
  •  | 
  •  

Pergunta

Digamos que tenhamos uma página da Web com um formulário de entrada de pesquisa, que envia dados ao servidor via HTTP GET. Portanto, isso significa que o servidor recebe dados de pesquisa por meio de seqüências de consultas. O usuário pode ver o URL e também pode inicializar essa solicitação por si mesmo (via Strings de consulta URL +).

Nós todos sabemos isso. Aqui está a questão.

E se esta página da web enviar dados para o servidor via postagem HTTP? Como o usuário pode inicializar esse pedido sozinho?

Bem, eu sei como capturar a postagem HTTP (é por isso que os sniffers da rede são para), mas como posso simular essa solicitação de postagem HTTP por mim em um código C#?

Foi útil?

Solução

Você pode dar uma olhada no Cliente da web classe. Ele permite publicar dados em um URL arbitrário:

using (var client = new WebClient())
{
    var dataToPost = Encoding.Default.GetBytes("param1=value1&param2=value2");
    var result = client.UploadData("http://example.com", "POST", dataToPost);
    // do something with the result
}

Irá gerar a seguinte solicitação:

POST / HTTP/1.1
Host: example.com
Content-Length: 27
Expect: 100-continue
Connection: Keep-Alive

param1=value1&param2=value2
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top