Convert CURL to C #

I spent years trying in various ways to convert this curl to C #. Can someone help. I am trying to make an http message and keep getting a 500 error. Here is what I want to convert:

curl --user username:password -X POST -d "browser=Win7x64-C1|Chrome32|1024x768&url=http://www.google.com" http://crossbrowsertesting.com/api/v3/livetests/ 

and this is what I still have:

  HttpWebRequest request = (HttpWebRequest)WebRequest.Create(baseurl); request.Method = "POST"; request.Accept = "application/json"; request.Credentials = new NetworkCredential(username, password); var response = request.GetResponse(); string text; using (var sr = new StreamReader(response.GetResponseStream())) { text = sr.ReadToEnd(); values.Add(text); } 

Tried this method, but it did not work:

 List<string> data = new List<string>(); data.Add("browser=Win7x64-C1|Chrome20|1024x768"); data.Add("url=URL"); data.Add("format=json"); data.Add("callback=doit"); var request = WebRequest.Create("CrossBrowserTestingURL"); request.Method = "POST"; request.ContentType = "application/x-www-form-urlencoded"; request.Credentials = new NetworkCredential(username, password); using (var writer = new StreamWriter(request.GetRequestStream())) { writer.Write("data=" + data); } var response = request.GetResponse(); string text; using (var sr = new StreamReader(response.GetResponseStream())) { text = sr.ReadToEnd(); values.Add(text); } 
+6
source share
1 answer

I modified the first to write data to the request stream in accordance with http://msdn.microsoft.com/en-us/library/debx8sh9(v=vs.110).aspx , does this work:

 HttpWebRequest request = (HttpWebRequest)WebRequest.Create(baseurl); request.Method = "POST"; request.Accept = "application/json"; request.Credentials = new NetworkCredential(username, password); request.UserAgent = "curl/7.37.0"; request.ContentType = "application/x-www-form-urlencoded"; using (var streamWriter = new StreamWriter(request.GetRequestStream())) { string data = "browser=Win7x64-C1|Chrome32|1024x768&url=http://www.google.com"; streamWriter.Write(data); } var response = request.GetResponse(); string text; using (var sr = new StreamReader(response.GetResponseStream())) { text = sr.ReadToEnd(); values.Add(text); } 
+14
source

Source: https://habr.com/ru/post/973815/


All Articles