2010-01-15 23 views
17

HTTP GET aracılığıyla verileri sunucuya gönderen bir arama giriş formuna sahip bir web sayfamız olduğunu varsayalım. Yani bu, sorgu dizeleri aracılığıyla sunucuya arama verileri gönderilir. Kullanıcı, URL’yi görebilir ve bu isteği kendi başına da (URL + Sorgu dizeleri aracılığıyla) başlatabilir.Tarayıcı HTTP POST isteği nasıl elde edilir ve sonuç C#

Hepimiz bunu biliyoruz. İşte soru.

Bu web sayfası HTTP POST ile sunucuya veri gönderirse ne olur? Kullanıcı bu talebi kendi başına nasıl başlatabilir?

HTTP POST'u nasıl yakalayacağımı biliyorum (bu nedenle ağ sniffers'ları içindir), ancak bu HTTP POST isteğini C# kodunda kendim nasıl taklit edebilirim?

cevap

24

WebClient sınıfına bir göz atabilirsiniz.

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

param1=value1&param2=value2 
:

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 
} 

aşağıdaki isteği üretecek: Bu keyfi bir url veri göndermek için izin verir

İlgili konular