Новая фабрика клиентов #17
@ -53,6 +53,7 @@
|
||||
<PackageReference Include="Refit" Version="8.0.0" />
|
||||
<PackageReference Include="Refit.HttpClientFactory" Version="8.0.0" />
|
||||
<PackageReference Include="RestSharp" Version="112.1.0" />
|
||||
|
||||
<PackageReference Include="System.Configuration.ConfigurationManager" Version="9.0.0" />
|
||||
<PackageReference Include="System.IdentityModel.Tokens.Jwt" Version="8.3.0" />
|
||||
ng.frolov
commented
проверить необходимость проверить необходимость
on.nemtina
commented
Необходимость только для этого: Необходимость только для этого:
|
||||
</ItemGroup>
|
||||
|
||||
|
@ -1,7 +1,9 @@
|
||||
using DD.Persistence.Client.Clients.Interfaces.Refit;
|
||||
using DD.Persistence.Client.Helpers;
|
||||
using Microsoft.Extensions.Configuration;
|
||||
using Microsoft.Extensions.Logging;
|
||||
using Refit;
|
||||
using System.Configuration;
|
||||
using System.Text.Json;
|
||||
|
||||
namespace DD.Persistence.Client;
|
||||
rs.efremov
commented
А не нужно ли добавить в проект А не нужно ли добавить в проект `<NoWarn>$(NoWarn);1591</NoWarn>`? У меня всё в варнингах почему-то
on.nemtina
commented
Создала отдельную задачу для этого: Создала отдельную задачу для этого:
https://project.ddrilling.ru/projects/persistance-service/work_packages/746/activity
|
||||
@ -18,11 +20,19 @@ public class RefitClientFactory<T> : IRefitClientFactory<T> where T : IRefitClie
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public RefitClientFactory(IConfiguration configuration)
|
||||
public RefitClientFactory(IConfiguration configuration, ILogger<IRefitClientFactory<T>> logger)
|
||||
{
|
||||
this.client = new HttpClient();
|
||||
|
||||
var baseUrl = configuration.GetSection("ClientUrl").Get<string>()!;
|
||||
var baseUrl = configuration.GetSection("ClientUrl").Get<string>();
|
||||
if (String.IsNullOrEmpty(baseUrl))
|
||||
{
|
||||
var exception = new SettingsPropertyNotFoundException("В настройках конфигурации не указан адрес Persistence сервиса.");
|
||||
|
||||
logger.LogError(exception.Message);
|
||||
|
||||
throw exception;
|
||||
}
|
||||
client.BaseAddress = new Uri(baseUrl);
|
||||
client.Authorize(configuration);
|
||||
|
||||
rs.efremov
commented
Данный метод тянет аутентификационные данные с конфигов и авторизует Http - клиента. Это нужно для тестов, но нужно ли для непосредственного использования фабрики сторонними сервисами? Если они передают уже авторизованного Http клиента - то нужно предусмотреть вызов Данный метод тянет аутентификационные данные с конфигов и авторизует Http - клиента. Это нужно для тестов, но нужно ли для непосредственного использования фабрики сторонними сервисами? Если они передают уже авторизованного Http клиента - то нужно предусмотреть вызов `client.Authorize(configuration);` только для тестов. Например проверкой Environment, либо через конфиг
|
||||
|
Loading…
Reference in New Issue
Block a user
проверить необходимость