SpeedRequest will help you run requests quickly and smoothly.
Installation via NuGet
Install-Package SpeedRequest
- GET
- POST
- PATCH
- DELETE
- PUT
- OPTIONS
- HEAD
- CONNECT
- TRACE
Add in the beggining of file.
using SpeedRequest;
And use one of this code templates:
HttpRequest request = null;
try {
request = new HttpRequest();
// Do something
}
catch (WebException ex) {
// Http error handling
}
catch (Exception ex) {
// Unhandled exceptions
}
Send multipart requests with fields and files:
var multipartContent = new MultipartContent();
multipartContent.AddString("login", "username");
multipartContent.AddString("password", "password");
multipartContent.AddFile(@"C:\hp.rar", "file1", "hp.rar");
string response = request.Post("https://example.com", Method.POST, "application/x-www-form-urlencoded", multipartContent).ToString();
Get page source:
string response = request.Get("https://example.com").ToString();
Post data:
string response = request.Post("https://example.com", Method.POST, "application/x-www-form-urlencoded", "login=username&password=password").ToString();
Get receive the message body of the response:
request.IgnoreProtocolErrors = true;
Add Headers:
request.Headers = new SpeedRequest.Headers[] { };
request.AddHeaders("name", "value");
Add User-Agent:
request.UserAgent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.159 Safari/537.36";
Get response headers:
var response = request.Get("https://example.com");
Headers[] headersResponse = response.HeadersResponse;
foreach (Headers headers in headersResponse)
{
// concat your string or do what you want
Console.WriteLine($"{headers.Name}: {headers.Value}");
}
Download a file:
var response = request.Get("https://example.com");
response.ToFile("C:\\myDownloadedFile.zip");
Get Cookies:
var response = request.Get("https://example.com");
Cookies[] cookieResponse = response.Cookies;
foreach (Cookies cookie in cookieResponse)
{
// concat your string or do what you want
Console.WriteLine($"{cookie.Name}: {cookie.Value}");
}
Set proxy server:
// Type: HTTP / HTTPS
request.Proxy = HttpProxyClient.Parse("127.0.0.1:8080");
// Type: Socks4
request.Proxy = Socks4ProxyClient.Parse("127.0.0.1:9000");
// Type: Socks4a
request.Proxy = Socks4aProxyClient.Parse("127.0.0.1:9000");
// Type: Socks5
request.Proxy = Socks5ProxyClient.Parse("127.0.0.1:9000");
// Type: Proxy Authentication
request.Proxy = HttpProxyAuthenticationClient.Parse("127.0.0.1", 8080, "username", "password");