Как мне определить, какой HostHeader использовал клиент?

#asp.net-mvc-3 #iis-7

#asp.net-mvc-3 #iis-7

Вопрос:

Я пытаюсь установить некоторые переменные сеанса в зависимости от того, какой hostHeader использовался для доступа к моему сайту. Должен ли я разобрать его из свойства URI или есть лучший способ? (MVC3/IIS7)

Ответ №1:

Проверьте HttpWebRequest .Свойство хоста, которое должно быть эквивалентно доступу Request.Headers["Host"] в MVC.

В нем упоминается, что он используется для «получения или установки значения заголовка хоста для использования в HTTP-запросе независимо от URI запроса». Если вы каким-то образом не устанавливаете это, то «тогда значение заголовка хоста для использования в HTTP-запросе основано на URI запроса». Поэтому проверка его с помощью Request.Url.Host или эквивалентного свойства в равной степени достаточно. Я не знаю другого способа.