Namespace
System.Net
Assembly
System.Net.Requests.dll
Inheritance
Object → WebRequest → HttpWebRequest
Implemented Interfaces
None
Simple GET request
// Using System;
// Using System.Net;
// Using System.IO;
var request = (HttpWebRequest)WebRequest.Create("https://api.example.com/data");
request.Method = "GET";
request.Accept = "application/json";
using var response = (HttpWebResponse)request.GetResponse();
using var stream = new StreamReader(response.GetResponseStream());
string result = stream.ReadToEnd();
Console.WriteLine(result);
POST request with JSON payload
var url = "https://api.example.com/submit";
var json = "{\"name\":\"John\",\"age\":30}";
var request = (HttpWebRequest)WebRequest.Create(url);
request.Method = "POST";
request.ContentType = "application/json";
request.ContentLength = System.Text.Encoding.UTF8.GetByteCount(json);
using (var writer = new StreamWriter(request.GetRequestStream()))
{
writer.Write(json);
}
using var response = (HttpWebResponse)request.GetResponse();
Console.WriteLine($"Status: {response.StatusCode}");