我遇到X-Frame-Options http标头的问题。
我使用MVC 5,因此在Haders响应的Headers中会自动添加SAMEORIGIN选项。
我仍然想使用默认选项,我不想在Application_Start中使用以下行:
base.HttpContext.Response.Headers.Remove("X-Frame-Options");
我想在控制器级别的某些特定操作中删除X-Frame-Options标头,代码如下:
0 10 * * * job
30 15 * * * job
但是,它没有用。
你知道如何删除它吗?
任何帮助将不胜感激。
答案 0 :(得分:6)
在调查问题之后,我注意到可以创建一个ActionFilter来覆盖OnResultExecuted方法,在那里我可以删除那个http头:
public class AllowIframeFromUriAttribute : ActionFilterAttribute
{
public override void OnResultExecuted(ResultExecutedContext filterContext)
{
//...
filterContext.HttpContext.Response.Headers.Remove("X-Frame-Options");
base.OnResultExecuted(filterContext);
}
}
它有效,所以我想分享解决方案。