Search code examples
c#httpwebclientwebrequest

C# - How to make a HTTP call


I wanted to make an HTTP call to a website. I just need to hit the URL and dont want to upload or download any data. What is the easiest and fastest way to do it.

I tried below code but its slow and after 2nd repetitive request it just goes into timeout for 59 secounds and than resume:

WebRequest webRequest = WebRequest.Create("http://ussbazesspre004:9002/DREADD?" + fileName);
webRequest.Method = "POST";
webRequest.ContentType = "application/x-www-form-urlencoded";
webRequest.ContentLength = fileName.Length;

Stream os = webRequest.GetRequestStream();
os.Write(buffer, 0, buffer.Length);
os.Close();

Is using the WebClient more efficient??

WebClient web = new WebClient();
web.UploadString(address);

I am using .NET ver 3.5


Solution

  • You've got some extra stuff in there if you're really just trying to call a website. All you should need is:

    WebRequest webRequest = WebRequest.Create("http://ussbazesspre004:9002/DREADD?" + fileName);
    WebResponse webResp = webRequest.GetResponse();
    

    If you don't want to wait for a response, you may look at BeginGetResponse to make it asynchronous .