Получить значения заголовков в ASP.NET MVC

У меня есть требование захватить заголовок HTTP User Agent, поступающий с устройства, взять значение и удалить 'uuid'. Этот UUID затем можно использовать, чтобы направить устройство в правильное место, чтобы передать его. файлы, относящиеся к устройству.

В веб-формах я смог получить его, используя

Request.ServerVariables["HTTP_USER_AGENT"]; //inside of Page_Load method

Как мне это сделать в MVC?


person Aaron    schedule 01.10.2010    source источник


Ответы (4)


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

Request.Headers.GetValues("XXX");

если имя не существует, генерируется исключение.

person Shedom Wei    schedule 29.12.2014
comment
какое исключение? - person Zapnologica; 26.06.2017
comment
@Zapnologica InvalidOperationException - person Jansen; 02.02.2020

То же самое и в контроллере:

Request.ServerVariables.Get("HTTP_USER_AGENT");

Объект Request является частью ASP.NET, MVC или нет.

См., Например, this.

person Oded    schedule 01.10.2010

Он должен быть в Request.Headers словаре.

person Nick Larsen    schedule 01.10.2010

Если есть кто-нибудь вроде меня, который искал в Google, как конкретно получить Content-Type заголовок HTTP-запроса, это довольно просто:

Request.ContentType
person Robert Dundon    schedule 08.07.2019