2015-05-22 2 views
6

Для некоторых POST-вызовов в нашем API мы указываем ответный заголовок местоположения на созданный ресурс.Заголовок местоположения с символами IDN, поврежденными при размещении в IIS

Заголовок Расположение может содержать URL с символами IDN (например http://résponse.com)

При размещении на API в IIS, IIS изменяет положение заголовок http://résponse.com/

Существует определенно что-то неправильно в кодировке там. Когда мы создаем наш API самостоятельно, заголовок Location не затрагивается. Есть ли какие-то настройки, которые мне не хватает в IIS, которые вызывают такое поведение? Тип содержимого charset установлен в utf-8, но это уже значение по умолчанию в IIS.

Версия IIS - 8.5+ Мы используем Web API, но использование NancyFx приводит к такому же поведению.

ответ

0

Я просто ничтожным закодированы специальные символы для теперь , но я до сих пор не понимаю, почему IIS изменяет заголовок и самопринятое решение не

0

Вы можете попробовать добавить заголовок к HTTP Response Список заголовков для этого сайта. Если ни один не указан, он будет доставлен во всех запросах пользовательского агента, что, вероятно, связано с тем, что вы видите ISO-8859-1

«Свойства» => «Заголовки HTTP» => «Типы файлов ..» . "=>" Новый тип ... ". Поместите расширение, которое вы хотите отобразить, отдельно для каждого расширения; Пользователи IIS, вероятно, захотят сопоставить .htm, .html, ... Затем для типа содержимого добавьте «text/html; charset = utf-8» (без кавычек; замените требуемую кодировку для utf-8;

0

Установите конфигурацию кодирования и культуры в .Net-функции глобализации в IIS (предположим, что вы используете API на основе asp.net?)

+0

Я уже пробовал это, но без результата. –

Смежные вопросы