Ошибка отправки POST запроса между сервисами и ошибка десериализации ответа

Есть сервис расположенный по адресу https://ххх.рф (основной), у него есть API с маршрутом до него - https://ххх.рф/api/TelegramBot/AcceptReplyMessageBot:

[HttpPost("AcceptReplyMessageBot")]
        public async Task<IActionResult> AcceptReplyMessageBot([FromBody] MessageData messageData)
        {
            Friend friend;
        ResponseMessageData responseMessage;
        string jsonResponse;
        string numberPhone = messageData.PhoneNumber != null ? ServicePhoneNumber.LeaveOnlyNumbers(messageData.PhoneNumber) : null;
        if (numberPhone != null && numberPhone.Length > 10)
        {
            friend = _serviceFriends.FindUserByPhoneNumber(numberPhone);
        }
        else
        {
            responseMessage = new ResponseMessageData { Status = "Invalid phone number" };
            return Ok(responseMessage);
        }

        string textQrCode;
        Byte[] byteCode = null;

        if (friend != null) {
            textQrCode = friend.TextQRcode;
        }
        else
        {
            responseMessage = new ResponseMessageData { Status = "Not found" };
            return Ok(responseMessage);
        }

        if(friend.ByteQrcode != null)
        {
            byteCode = friend.ByteQrcode;
        }

        if(textQrCode != null && byteCode != null)
        {
            responseMessage = new ResponseMessageData { PhoneNumber = friend.Telephone, TextMessage = textQrCode, ByteQrcode = byteCode };
        }
        else if (textQrCode != null)
        {
            responseMessage = new ResponseMessageData { PhoneNumber = friend.Telephone, TextMessage = textQrCode};
        }
        else
        {
            responseMessage = new ResponseMessageData { TextMessage = "Участнику с данным номером телефона не присвоен QR-код!" };
        }
        //jsonResponse = JsonSerializer.Serialize(responseMessage);

        return Ok(responseMessage);
        }

Есть другой микро сервис по адресу https://messanger.ххх.рф (TLmessenger), который отправляет на вышеописанный основной сервис POST запросы и обрабатывает от него ответы:

[HttpPost]
public async Task<IActionResult> Post([FromBody] Update update)
{

    if (update == null) return Ok();

    string responseMessage = "";
    if (message != null)
    {
        responseMessage = "Укажите номер в федеральном формате (+7хххххххххх)";

        if (message.ReplyToMessage != null)
        {
            string messageNumberPhone;
            switch (message.ReplyToMessage.Text)
            {
                case "Укажите номер в федеральном формате (+7хххххххххх)":
                    messageNumberPhone = ServicePhoneNumber.LeaveOnlyNumbers(message.Text);

                    if (messageNumberPhone.Length < 11 || messageNumberPhone.Length > 12)
                    {
                        await _telegramBotClient.SendTextMessageAsync(message.From.Id, "Номер указан в неверном формате. Ждем Ваш номер в федеральном формате (+7хххххххххх)", ParseMode.Default, replyMarkup: new ForceReplyMarkup { Selective = true });
                    }
                    else
                    {
                        MessageData requestMessage = _messageDataService.CreateMessageData(update, this.HttpContext.Request.Host.Value.ToString());

                        // Отправка запроса на API др. сервиса
                        string jsonRequest = JsonSerializer.Serialize(requestMessage);
                        string jsonResponseData = await PostRequestHttpAsync(url, jsonRequest);
                        ResponseMessageData responseData = JsonSerializer.Deserialize<ResponseMessageData>(jsonResponseData);

                        if (!responseData.Status.Equals("NotFound") && responseData.TextMessage != null)
                        {
                            string responseMessageFromDB = responseData.TextMessage;
                            await _telegramBotClient.SendTextMessageAsync(message.Chat.Id, responseMessageFromDB);
                        }
                        else {
                            string responseMessageFromDB = "Участник с данным номером телефона не найден!";
                            await _telegramBotClient.SendTextMessageAsync(message.Chat.Id, responseMessageFromDB);
                        }
                    }
                    break;

                case "Номер указан в неверном формате. Ждем Ваш номер в федеральном формате (+7хххххххххх)":
                    messageNumberPhone = ServicePhoneNumber.LeaveOnlyNumbers(message.Text);

                    if (messageNumberPhone.Length < 11 || messageNumberPhone.Length > 12)
                    {
                        await _telegramBotClient.SendTextMessageAsync(message.From.Id, "Номер указан в неверном формате. Ждем Ваш номер в федеральном формате (+7хххххххххх)", ParseMode.Default, replyMarkup: new ForceReplyMarkup { Selective = true });
                    }
                    else
                    {
                        MessageData requestMessage = _messageDataService.CreateMessageData(update, this.HttpContext.Request.Host.Value.ToString());
                        // Отправка запроса на API др. сервиса
                        string jsonRequest = JsonSerializer.Serialize(requestMessage);
                        string jsonResponseData = await PostRequestHttpAsync(url, jsonRequest);
                        ResponseMessageData responseData = JsonSerializer.Deserialize<ResponseMessageData>(jsonResponseData);

                        if (!responseData.Status.Equals("NotFound") && responseData.TextMessage != null)
                        {
                            string responseMessageFromDB = responseData.TextMessage;
                            await _telegramBotClient.SendTextMessageAsync(message.Chat.Id, responseMessageFromDB);
                        }
                        else
                        {
                            string responseMessageFromDB = "Участник с данным номером телефона не найден!";
                            await _telegramBotClient.SendTextMessageAsync(message.Chat.Id, responseMessageFromDB);
                        }
                    }
                    break;
            }
        }
        else
        {
            await _telegramBotClient.SendTextMessageAsync(message.From.Id, responseMessage, ParseMode.Default, replyMarkup: new ForceReplyMarkup { Selective = true });
        }
    }

    return Ok();
}

// Функция отправки запроса на API др. сервиса 
[ApiExplorerSettings(IgnoreApi = true)]
public async Task<string> PostRequestHttpAsync(string url, string json)
{
     using HttpContent content = new StringContent(json, Encoding.UTF8, "application/json");
        HttpClient httpClient = _clientFactory.CreateClient();
        httpClient.Timeout = TimeSpan.FromSeconds(120);
        using HttpResponseMessage response = await httpClient.PostAsync(url, content).ConfigureAwait(false);

        return await response.Content.ReadAsStringAsync().ConfigureAwait(false);
}

Пробовал отправлять на каждый из этих контроллеров обоих сервисов POST запросы через Postman - все отрабатывает норм. Проверил работает ли 2-ой сервис (бот TLmessenger) отдельно без отправки запросов на основной - работает. Добавил отправку запросов из бота TLmessenger на основной сервис - TLmessenger перестал работать.

Далее запустил первый (основной) сервис у себя на локально через ngrok, а 2-му (боту TLmessenger) прописал адрес url на который нужно слать запросы на 1-ый, который сформировал ngrok. Залил 2-ой (бота TLmessenger) на хостинг, в итоге TLmessenger сообщения из телеграмма получает, обрабатывает, отправляет POST запрос на основной сервис, основной сервис получает этот запрос отрабатывает и отправляет ответ, но TLmessenger не отвечает, по ходу не может обработать ответ.

Попробовал запустил первый (основной) сервис у себя на локально через ngrok. 2-ой (бота TLmessenger) запустил в режиме отладки на другом ПК и отправил запрос через swagger, в итоге TLmessenger сообщение из swagger получает, обрабатывает, отправляет POST запрос на основной сервис (запущенный на ngrok), основной сервис получает этот запрос отрабатывает и отправляет ответ, TLmessenger ответ получает, но когда пытается вернуть его

string jsonResponseData = await PostRequestHttpAsync(url, jsonRequest);
                ResponseMessageData responseData = JsonSerializer.Deserialize<ResponseMessageData>(jsonResponseData);
                string str = responseData.Status;
                return Ok(str);

получаю ошибку:

204 Undocumented Response headers  date: Thu30 Sep 2021 04:58:28 GMT   server: Microsoft-IIS/10.0   x-powered-by: ASP.NET

Не пойму в чем проблема.

Скрины ответа полученного от основного сервиса из отладчика: введите сюда описание изображения

введите сюда описание изображения

Запустил оба сервиса на одном хосте, но на разных портах с помощью Kestral. При тестировании выдало следующею ошибку:

Microsoft.AspNetCore.HttpsPolicy.HttpsRedirectionMiddleware[3] Failed to determine the https port for redirect. System.Text.Json.JsonException: 'T' is an invalid start of a value. Path: $ | LineNumber: 0 | BytePositionInLine: 0. ---> System.Text.Json.JsonReaderException: 'T' is an invalid start of a value. LineNumber: 0 | BytePositionInLine: 0. at System.Text.Json.ThrowHelper.ThrowJsonReaderException(Utf8Js onReader& json, ExceptionResource resource, Byte nextByte, ReadOnlySpan1 bytes) at System.Text.Json.Utf8JsonReader.ConsumeValue(Byte marker) at System.Text.Json.Utf8JsonReader.ReadFirstToken(Byte first) at System.Text.Json.Utf8JsonReader.ReadSingleSegment() at System.Text.Json.Utf8JsonReader.Read() at System.Text.Json.Serialization.JsonConverter1.ReadCore(Utf8 JsonReader& reader, JsonSerializerOptions options, ReadStack& state) --- End of inner exception stack trace --- at System.Text.Json.ThrowHelper.ReThrowWithPath(ReadStack& state, JsonReaderException ex) at System.Text.Json.Serialization.JsonConverter`1.ReadCore(Utf8 JsonReader& reader, JsonSerializerOptions options, ReadStack& state) at System.Text.Json.JsonSerializer.ReadCore[TValue](JsonConverter jsonConverter, Utf8JsonReader& reader, JsonSerializerOptions options, ReadStack& state) at System.Text.Json.JsonSerializer.ReadCore[TValue](Utf8JsonReader& reader, Type returnType, JsonSerializerOptions options) at System.Text.Json.JsonSerializer.Deserialize[TValue](String json, Type returnType, JsonSerializerOptions options) at System.Text.Json.JsonSerializer.Deserialize[TValue](String json, JsonSerializerOptions options) at TLmessanger.Controllers.TelegramListenerController.Post(Upda te update) in D:\My_PROGRAMS\TLmessanger\Controllers\TelegramListenerContr oller.cs:line 179

в строке:

ResponseMessageData responseData = JsonSerializer.Deserialize<ResponseMessageData>(jsonResponseData);

С основного сервиса у меня уходит ответ следующего вида:

responseMessage {TLmessanger.Models.ResponseMessageData} TLmessanger.Models.ResponseMessageData ByteQrcode null byte[] PhoneNumber null string Status "Not found" string TextMessage null string UserName null string


Ответы (0 шт):