Подтвердить что ты не робот

Как добавить заголовок ответа Expires в ответ на действие WebAPI?

Я уверен, что "Expires" является допустимым типом заголовка HTTP-ответа. Но когда я пытаюсь установить его в моем коде: (это в методе ActionFilter.OnActionExecuted)

actionExecutedContext.Response.Headers.Add("Expires", (DateTime.Now + Timespan.FromDays(7)).ToString("R"));

В результате я получаю исключение:

InvalidOperationException: неправильное имя заголовка. Убедитесь, что запрос заголовки используются с HttpRequestMessage, заголовки ответов с HttpResponseMessage и заголовки содержимого с объектами HttpContent.

4b9b3361

Ответ 1

Истекает заголовок содержимого. Вместо этого попробуйте:

actionExecutedContext.Response.Content.Headers.Expires = DateTimeOffset.Now.AddDays(7);

Ответ 2

Try

response.Content.Headers.Expires = DateTimeOffset.Now.AddDays(7);