SORU
3 Kasım 2010, ÇARŞAMBA


.NET: en Basit veri göndermek ve yanıt oku

Benim için sürpriz, bu, anladığım kadarıyla, bir şey kadar basit yapamam .NET META:

byte[] response = Http.Post
(
    url: "http://dork.com/service",
    contentType: "application/x-www-form-urlencoded",
    contentLength: 32,
    content: "home=Cosby&favorite flavor=flies"
);

Bu örnek kod, yukarıda bir HTTP POST veri ile yapar, ve 7* *statik bir sınıf Post bir yöntem yanıt verir.

Bu kolay bir şey olmadan terk ettiğimiz andan itibaren, bir sonraki en iyi çözüm nedir?

Nasıl veri ile bir HTTP POST gönderebilirim VE yanıt içeriğini almak?

CEVAP
3 Kasım 2010, ÇARŞAMBA


   using (WebClient client = new WebClient())
   {

       byte[] response =
       client.UploadValues("http://dork.com/service", new NameValueCollection()
       {
           { "home", "Cosby" },
           { "favorite flavor", "flies" }
       });

       string result = System.Text.Encoding.UTF8.GetString(response);
   }

İçerir: bunlara ihtiyacınız olacak

using System;
using System.Collections.Specialized;
using System.Net;

Sınıf/statik bir yöntem kullanma konusunda ısrarcı iseniz:

public static class Http
{
    public static byte[] Post(string uri, NameValueCollection pairs)
    {
        byte[] response = null;
        using (WebClient client = new WebClient())
        {
            response = client.UploadValues(uri, pairs);
        }
        return response;
    }
}

O zaman sadece:

var response = Http.Post("http://dork.com/service", new NameValueCollection() {
    { "home", "Cosby" },
    { "favorite flavor", "flies" }
});

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • BenjiManTV

    BenjiManTV

    20 Mart 2011
  • Matthew Smith

    Matthew Smit

    24 Mayıs 2010
  • The Scary Snowman

    The Scary Sn

    1 ŞUBAT 2011