jeudi 26 mai 2016

httpwebrequest failing in c#

I am doing a web request for an url using c#

this is the original curl request

curl 'http://ift.tt/1qLi6a8' -H 'Cookie:shippingCountry=US;' -H 'Accept-Encoding: gzip, deflate, sdch' -H 'User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Ubuntu Chromium/49.0.2623.108 Chrome/49.0.2623.108 Safari/537.36' -H 'Accept-Language: en-US,en;q=0.8' -H 'Accept: application/json, text/javascript, */*; q=0.01' --compressed

I wrote a c# code for this

public string variations_curl ()
    {
        var request = (HttpWebRequest)WebRequest.Create("http://ift.tt/25nzKUo");
        //request.Referer = "http://www.youtube.com/"; // optional

        request.Method = WebRequestMethods.Http.Post;
        //request.Headers["origin"] = "http://ift.tt/1m8p6rF";
        request.AutomaticDecompression = DecompressionMethods.GZip | DecompressionMethods.Deflate;
        request.Headers["Accept-Language"] = "en-US,en;q=0.8";
        request.UserAgent = "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Ubuntu Chromium/49.0.2623.108 Chrome/49.0.2623.108 Safari/537.36";
        //request.ContentType = "application/x-www-form-urlencoded";
        request.Headers ["Cookie"] = "shippingCountry=US;";
        request.Accept = "application/json";

        var response = (HttpWebResponse)request.GetResponse();
        using (var reader = new StreamReader(response.GetResponseStream()))
        {
            var html = reader.ReadToEnd();
            return html;
        }



    }

But the above code throws some error

An unhandled exception of type 'System.Net.WebException' occurred in System.dll

Additional information: The remote server returned an error: (411) Length Required.

How to fix this error and make the program work?




Aucun commentaire:

Enregistrer un commentaire