Улучшения, теперь работает http и grpc
Но ещё требуется ревью и чистка
This commit is contained in:
@@ -38,9 +38,11 @@ public sealed class HttpSmsClient : ISmsClient, IDisposable
|
||||
{
|
||||
var request = new SendOrderApiRequest
|
||||
{
|
||||
CommandParameters = new SendOrderParameters(
|
||||
order.Id.ToString(),
|
||||
order.Items.ToList()),
|
||||
CommandParameters = new SendOrderParameters
|
||||
{
|
||||
OrderId = order.Id.ToString(),
|
||||
MenuItems = order.Items.ToList(),
|
||||
},
|
||||
};
|
||||
|
||||
var response = await SendAsync(request, cancellationToken);
|
||||
@@ -66,7 +68,30 @@ public sealed class HttpSmsClient : ISmsClient, IDisposable
|
||||
}
|
||||
|
||||
var responseJson = await httpResponse.Content.ReadAsStringAsync(cancellationToken);
|
||||
return ApiResponseDeserializer.Deserialize(responseJson);
|
||||
|
||||
if (string.IsNullOrWhiteSpace(responseJson))
|
||||
{
|
||||
return new ApiResponse
|
||||
{
|
||||
Command = request.Command,
|
||||
Success = false,
|
||||
ErrorMessage = $"Пустой ответ сервера (HTTP {(int)httpResponse.StatusCode}).",
|
||||
};
|
||||
}
|
||||
|
||||
try
|
||||
{
|
||||
return ApiResponseDeserializer.Deserialize(responseJson);
|
||||
}
|
||||
catch (JsonException)
|
||||
{
|
||||
return new ApiResponse
|
||||
{
|
||||
Command = request.Command,
|
||||
Success = false,
|
||||
ErrorMessage = $"Некорректный JSON в ответе (HTTP {(int)httpResponse.StatusCode}): {responseJson}",
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
private static GetMenuApiResponse ToGetMenuResponse(ApiResponse response) =>
|
||||
|
||||
Reference in New Issue
Block a user