// *********************************************************************** // Assembly : FCS.Lib.Virk // Author : fhdk // Created : 2022 12 17 13:33 // // Last Modified By: fhdk // Last Modified On : 2023 03 14 09:16 // *********************************************************************** // // Copyright (C) 2022-2023 FCS Frede's Computer Services. // This program is free software: you can redistribute it and/or modify // it under the terms of the GNU Affero General Public License as // published by the Free Software Foundation, either version 3 of the // License, or (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU Affero General Public License for more details. // // You should have received a copy of the GNU Affero General Public License // along with this program. If not, see [https://www.gnu.org/licenses] // // // *********************************************************************** using System.Net.Http.Headers; using System.Text; namespace FCS.Lib.Virk { /// /// Registrar http request /// public class VrHttpRequest { /// /// Async registrar http request /// /// /// /// /// /// VrResponseView object /// public async Task GetResponseAsync(string endpoint, string jsonData, string auth, string userAgent) { using var content = new StringContent(jsonData, Encoding.UTF8, "application/json"); using var client = new HttpClient(); using var vrRequest = new HttpRequestMessage(HttpMethod.Post, endpoint); vrRequest.Headers.Authorization = new AuthenticationHeaderValue("Basic", $"{auth}"); vrRequest.Headers.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json")); vrRequest.Headers.Add("User-Agent", userAgent); vrRequest.Content = content; var response = await client.SendAsync(vrRequest).ConfigureAwait(true); var jsonResult = await response.Content.ReadAsStringAsync().ConfigureAwait(true); return new VrResponseView { Code = response.StatusCode, IsSuccessStatusCode = response.IsSuccessStatusCode, Message = jsonResult }; } } }