Есть некоторые данные, которые я должен получить из официального API-интерфейса c федерального института из Бразилии. Сначала я использовал JavaScript для получения данных через HttpClient со стороны клиента, и у меня не возникло проблем.
Теперь я решил вызвать этот API из своего собственного Asp. Net API, из соображений безопасности и для сохранения буфера данных вместо вызова федерального API для каждого из моих запросов клиентов. Но теперь вместо строки, отформатированной в JSON, получаю вот что:

Я знаю, что вставлять нельзя скриншоты текстов, но я не нашел другого способа получить эту строку. Когда я пытаюсь просмотреть эту же строку как текст, я получаю следующее:

Вот что я делал:
using (HttpClient httpClient = new HttpClient())
{
var response = await httpClient.GetAsync("https://servicodados.ibge.gov.br/api/v1/localidades/municipios");
if (response?.IsSuccessStatusCode ?? false)
{
var str = await response.Content.ReadAsStringAsync();
...
}
}
Я пробовал другие методы чтения, хотя я знаю, что все они должны давать один и тот же ответ. Я пытался читать данные как байтовый массив и пробовал несколько кодировок: ASCII, Unicode, UTF8 ...
var array = await httpClient.GetByteArrayAsync("https://servicodados.ibge.gov.br/api/v1/localidades/municipios");
var str = Encoding.UTF8.GetString(array);
Безуспешно.
Просто вставив этот самый URI на мой браузер, я получаю желаемый результат , который просто огромен JSON.
Это - документация API на бразильском португальском языке.