Skip to content

Instantly share code, notes, and snippets.

@vpetkovic
Created October 1, 2019 14:17
Show Gist options
  • Save vpetkovic/d187517793ea5521fb46be406ec3bf38 to your computer and use it in GitHub Desktop.
Save vpetkovic/d187517793ea5521fb46be406ec3bf38 to your computer and use it in GitHub Desktop.
using RestSharp using HTTPClient using WebClient
using RestSharp;
using System.Net;
using System.Net.Http;
public static void useRestSharp(string url)
{
var client = new RestClient(url);
var request = new RestRequest(Method.POST);
request.AddHeader("Content-Type", "application/json");
request.AddParameter("undefined", APIRequest(), ParameterType.RequestBody);
IRestResponse response = client.Execute(request);
Console.WriteLine(response.Content);
}
public static async void useHTTPClient(string url)
{
var httpClient = new HttpClient();
var request = httpClient.PostAsync(url, new StringContent(APIRequest(), Encoding.UTF8, "application/json")).Result;
var content = await request.Content.ReadAsStringAsync();
Console.WriteLine(content);
}
public static void useWebClient(string url)
{
var webClient = new WebClient();
webClient.Headers[HttpRequestHeader.ContentType] = "application/json";
var response = webClient.UploadString(url, APIRequest());
Console.WriteLine(response);
}
// Could be serialized JSON object using json.net or newtonsoft.json
public static string APIRequest()
{
string source = @"C:\Users\vpetkovic\Desktop\NH example.txt";
dynamic obj = new ExpandoObject();
obj.username = "data";
obj.password = "data";
obj.fileName = Path.GetFileName(source);
obj.file = Convert.ToBase64String(File.ReadAllBytes(source));
string apiRequest = "{\r\n \"username\": \"" + obj.username + "\",\r\n \"password\": \"" + obj.password + "\",\r\n \"fileName\": \"" + obj.fileName + "\",\r\n \"file\": \"" + obj.file + "\"\r\n}";
return apiRequest;
}
@danieltadresu
Copy link

Hey! thanks a lot, you helped me too much! Hugs from Chile

@vpetkovic
Copy link
Author

Glad I could help 🙂

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment