fatihkaratay Ответов: 1

Как прочитать значение в заголовках HHTP в dotnet ограничителя ядра 2.0


Я пытаюсь прочитать значение из заголовков HTTP с помощью контроллеров dotnet core 2.0. Код, который у меня есть, находится ниже:
[Route("api/[controller]")]
    public class AuthController : Controller
    {
        private readonly ActionExecutedContext context;
        public AuthController(ActionExecutedContext context)
        {
            this.context = context;
        }

        [HttpGet]
        public string Get()
        {
            var xyz = context.HttpContext.Request?.Headers["Basic"];
            return xyz;
        }
    }


Возвращаемое значение-ничто. Исключение, которое у меня есть, это

InvalidOperationException: Unable to resolve service for type 'Microsoft.AspNetCore.Mvc.Filters.ActionExecutedContext' while attempting to activate 'Resiliency.API.Controllers.AuthController'.

Что я должен сделать, чтобы прочитать значение из заголовков HTTP в ядре dotnet 2.0?

Что я уже пробовал:

Я пытался
HttpRequest.Headers

1 Ответов

Рейтинг:
9

#realJSOP

В своем методе действий попробуйте следующее:

Request.Headers["myHeaderKeyName"]


Кстати, класс контроллера восстанавливается с каждым запросом, поэтому ваше сохраненное значение запроса будет равно null, если вы не сохраните его другим способом.


fatihkaratay

это возвращает null. Я попробовал в качестве просьбы.Заголовки["дата"] и он не возвращает никакого содержимого

#realJSOP

Есть ли ключ даты в заголовке? Вы уверены, что на самом деле вам не нужно значение из строки запроса?

Запрос.QueryString["дата"]

С другой стороны, параметры в строке запроса сопоставляются с прототипом действия. Вам не нужно будет обращаться непосредственно к строке запроса.

fatihkaratay

На самом деле я пытаюсь получить имя пользователя из файла cookie, который находится в заголовке запроса. Файл cookie имеет userinfo, который поступает из Службы единого входа. Мне нужно получить информацию о пользователе из этого файла cookie и загрузить страницу на его основе. Я не уверен, что следую правильному подходу.