mirror of
https://github.com/yawaflua/SPWorlds.git
synced 2025-12-08 19:49:28 +02:00
40 lines
1.1 KiB
C#
40 lines
1.1 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Net.Http.Headers;
|
|
using System.Text;
|
|
using System.Text.Json;
|
|
using System.Threading.Tasks;
|
|
|
|
namespace SPWorldsApi.HttpClient
|
|
{
|
|
public class HttpRequest(string BASE_URL, AuthenticationHeaderValue AuthHeader)
|
|
{
|
|
internal async Task<string> SendRequest(string endpoint, HttpMethod method = null, object body = null)
|
|
{
|
|
method ??= body == null ? HttpMethod.Get : HttpMethod.Post;
|
|
|
|
HttpResponseMessage message;
|
|
var client = new System.Net.Http.HttpClient();
|
|
|
|
using (var requestMessage = new HttpRequestMessage(method, BASE_URL + endpoint))
|
|
{
|
|
requestMessage.Content = new StringContent(
|
|
JsonSerializer.Serialize(body),
|
|
Encoding.UTF8, "application/json"
|
|
);
|
|
|
|
requestMessage.Headers.Authorization = AuthHeader;
|
|
|
|
message = await client.SendAsync(requestMessage);
|
|
|
|
}
|
|
|
|
client.Dispose();
|
|
|
|
return await message.Content.ReadAsStringAsync();
|
|
}
|
|
}
|
|
|
|
}
|