Я пытаюсь удалить заголовок «X-Frame-Options» только для действий конкретного контроллера, используя:
protected override void OnResultExecuting(ResultExecutingContext filterContext)
{
filterContext.HttpContext.Response.Headers.Remove("X-Frame-Options");
base.OnResultExecuting(filterContext);
}
Однако, похоже, это вообще не работает. Единственный способ заставить его работать на моем сайте — добавить этот код в файл global.asax ниже. Я почти уверен, что мне не хватает правильного шага в конвейере ASP.NET MVC/IIS, который позволяет мне перезаписать настройку IIS этого заголовка. Это возможно?
protected void Application_EndRequest()
{
Response.Headers.Remove("X-Frame-Options");
}
Что касается того, почему я хочу это сделать, я создаю виджет, который пользователи смогут использовать на своих личных сайтах с помощью iframe, но позволять им отправлять информацию на наш сайт. Я понимаю, что отключение этого заголовка имеет последствия для безопасности, и хотя я приветствую любые предложения о том, как снизить эти риски, я просто хочу знать, возможно ли то, о чем я прошу.