cloutier--bird.makeup/src/BirdsiteLive.Domain/ActivityPubService.cs

26 lines
767 B
C#
Raw Normal View History

2020-06-06 01:29:13 -04:00
using System.Net.Http;
using System.Threading.Tasks;
using BirdsiteLive.ActivityPub;
using Newtonsoft.Json;
namespace BirdsiteLive.Domain
{
public interface IActivityPubService
{
Task<Actor> GetUser(string objectId);
}
public class ActivityPubService : IActivityPubService
{
public async Task<Actor> GetUser(string objectId)
{
using (var httpClient = new HttpClient())
{
httpClient.DefaultRequestHeaders.Add("Accept", "application/json");
var result = await httpClient.GetAsync(objectId);
var content = await result.Content.ReadAsStringAsync();
return JsonConvert.DeserializeObject<Actor>(content);
}
}
}
}