diff --git a/TaxBaik.Web/Services/InquiryBrowserClient.cs b/TaxBaik.Web/Services/InquiryBrowserClient.cs index 20028ce..ce899c7 100644 --- a/TaxBaik.Web/Services/InquiryBrowserClient.cs +++ b/TaxBaik.Web/Services/InquiryBrowserClient.cs @@ -1,5 +1,6 @@ namespace TaxBaik.Web.Services; +using System.Net.Http; using System.Net.Http.Json; using TaxBaik.Domain.Entities; @@ -21,11 +22,21 @@ public class InquiryBrowserClient : IInquiryBrowserClient { private readonly HttpClient _http; private readonly ILogger _logger; + private readonly ITokenStore _tokenStore; - public InquiryBrowserClient(HttpClient http, ILogger logger) + public InquiryBrowserClient(HttpClient http, ILogger logger, ITokenStore tokenStore) { _http = http; _logger = logger; + _tokenStore = tokenStore; + } + + private void EnsureAuthHeader() + { + if (!string.IsNullOrEmpty(_tokenStore.AccessToken) && !_http.DefaultRequestHeaders.Contains("Authorization")) + { + _http.DefaultRequestHeaders.Authorization = new("Bearer", _tokenStore.AccessToken); + } } public async Task<(IEnumerable Items, int Total)> GetPagedAsync( @@ -33,6 +44,7 @@ public class InquiryBrowserClient : IInquiryBrowserClient { try { + EnsureAuthHeader(); var result = await _http.GetFromJsonAsync( $"inquiry?page={page}&pageSize={pageSize}", cancellationToken: ct); @@ -52,6 +64,7 @@ public class InquiryBrowserClient : IInquiryBrowserClient { try { + EnsureAuthHeader(); return await _http.GetFromJsonAsync( $"inquiry/{id}", cancellationToken: ct); @@ -67,6 +80,7 @@ public class InquiryBrowserClient : IInquiryBrowserClient { try { + EnsureAuthHeader(); var request = new { status }; var response = await _http.PutAsJsonAsync( $"inquiry/{id}/status", @@ -86,6 +100,7 @@ public class InquiryBrowserClient : IInquiryBrowserClient { try { + EnsureAuthHeader(); var request = new { adminMemo }; var response = await _http.PutAsJsonAsync( $"inquiry/{id}/memo", @@ -105,6 +120,7 @@ public class InquiryBrowserClient : IInquiryBrowserClient { try { + EnsureAuthHeader(); var response = await _http.PostAsJsonAsync( $"inquiry/{id}/convert-to-client", new { name, phone, serviceType },