Мы запускаем приложение веб-API asp.net в производстве, используя IIS и ARR для разгрузки SSL и обратного прокси. Мы наблюдаем некоторые странные проблемы с запросом xml из конечной точки webapi.
Время от времени случайным образом, между запросами может быть 2 секунды или минуты, на самом деле это не имеет значения, выходные данные преобразуются по-разному, даже если база данных не изменилась. Это происходит почти всегда, когда задание cron получает одно задание каждую минуту, почти все ответы заканчиваются по-разному.
Один раздел ответа может иметь настоящие символы новой строки, в то время как тот же контент в следующем ответе может экранировать их как "\ n", таким образом выводя текст \ n вместо реального переноса строки. Этого можно избежать по-разному в разных частях одного и того же ответа на один и тот же запрос. Например. один xml-элемент может иметь настоящие символы новой строки, следующий xml-элемент может их экранировать.
Веб-приложение использует встроенный .NET xmlwriter, поэтому нет никакого пользовательского вывода xml, который мог бы вызвать это.
Я клонировал виртуальную машину и настроил промежуточную среду, в которой она не воспроизводится, хотя ответ здесь намного меньше из-за меньшего количества данных.
Есть ли какой-либо параметр в ARR, который может привести к такому поведению преобразования при запросах? Например. какой-то механизм кеширования