| 1234567891011121314151617181920212223242526272829303132 |
-
- using GrpcShared.DTO;
- using GrpcShared.DTO.Track;
- using GrpcShared.Interfaces;
- using Microsoft.Net.Http.Headers;
- using Newtonsoft.Json;
-
- namespace SpotifyService.Services
- {
- public class StatsService : IStatsService
- {
- private readonly IHttpClientFactory _httpClientFactory;
-
- public StatsService(IHttpClientFactory httpClientFactory)
- {
- _httpClientFactory = httpClientFactory;
- }
-
- public async Task<TrackResponse> GetCurrentlyPlayingTrack(TokenMessage token)
- {
- var client = _httpClientFactory.CreateClient("HttpClient");
- client.DefaultRequestHeaders.Add(HeaderNames.Authorization, "Bearer " + token.Token);
-
- var searchResult = await client.GetAsync($"me/player/currently-playing");
-
- var responses = JsonConvert.DeserializeObject<TrackResponse>(await searchResult.Content.ReadAsStringAsync())!;
-
- return responses;
-
- }
- }
- }
|