ASP.net MVC5中的asp.net-mvc – CORS
发布时间:2020-05-23 14:30:51 所属栏目:asp.Net 来源:互联网
导读:我有一个MVC项目,其中有几个JSON控制器方法我想要暴露跨域。不是整个网站,只是这两种方法。 我基本上想要在这篇文章中提到的确切的事情: http://enable-cors.org/server_aspnet.html 但是,问题是我有一个常规的MVC项目而不是一个WEB API,这意味着我无法
|
我有一个MVC项目,其中有几个JSON控制器方法我想要暴露跨域。不是整个网站,只是这两种方法。 我基本上想要在这篇文章中提到的确切的事情: http://enable-cors.org/server_aspnet.html 但是,问题是我有一个常规的MVC项目而不是一个WEB API,这意味着我无法遵循注册的步骤 public static void Register(HttpConfiguration config)
{
// New code
config.EnableCors();
}
方法,因为它不存在于我的MVC项目中。 有没有办法使用这个库,虽然它是一个MVC项目? 我知道我可以通过web.config配置它: <httpProtocol>
<customHeaders>
<clear />
<add name="Access-Control-Allow-Origin" value="http://www.domain.com" />
</customHeaders>
</httpProtocol>
但是我不想公开所有的方法,我想指定多个域(2个域)来访问我的方法… 解决方法如下所述: Setting Access-Control-Allow-Origin in ASP.Net MVC – simplest possible method您应该创建一个操作过滤器并将标题设置在那里。您可以随时随地使用此操作过滤器对您的操作方法。 public class AllowCrossSiteJsonAttribute : ActionFilterAttribute
{
public override void OnActionExecuting(ActionExecutingContext filterContext)
{
filterContext.RequestContext.HttpContext.Response.AddHeader("Access-Control-Allow-Origin","*");
base.OnActionExecuting(filterContext);
}
}
如果要添加多个域,您不能只是多次设置标题。在您的操作过滤器中,您将需要检查请求域是否来自您的域列表,然后设置标题。 public override void OnActionExecuting(ActionExecutingContext filterContext)
{
var domains = new List<string> {"domain2.com","domain1.com"};
if (domains.Contains(filterContext.RequestContext.HttpContext.Request.UrlReferrer.Host))
{
filterContext.RequestContext.HttpContext.Response.AddHeader("Access-Control-Allow-Origin","*");
}
base.OnActionExecuting(filterContext);
} (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- 在IIS中零停机上传/回滚
- 页面存在时的404 – IIS 5,ASP.NET 4.0
- asp.net – 如何在HTML标记中阅读web.config APP键设置
- asp.net – 从_layout.cshtml将常量值传递给Angular
- asp.net-mvc – 根据浏览器接受语言自动设置uiCulture
- asp.net-mvc – 如何在c#/ asp.net中使用jquery或ajax来更新
- asp.net-mvc – MVC应用程序的布局/设计模板?
- asp.net-mvc-4 – ASP.NET MVC 4通过ActionLink传递对象变量
- asp.net – LINQ:自定义列名
- asp.net – 为什么在调试我的Web应用程序时得到“服务器提交
推荐文章
站长推荐
- asp.net – HttpCookieCollection.Add和HttpCook
- asp.net-mvc – ASP.NET MVC获取具有特定配置文件
- 在ASP.NET中下载文件的实现代码
- asp.net – 递归控制搜索与LINQ
- 如何在ASP.NET MVC中手动设置用户的角色?
- asp.net-mvc – MVC2 Binding不适用于Html.DropD
- asp.net-mvc – 在HTML表单上的ASP.NET MVC中的P
- asp.net-mvc – 为MVC3 DateTime设置DataFormatS
- ASP.NET MVC – jquery datepicker
- asp.net-mvc – 与ASP.NET MVC等效的GetWebResou
热点阅读
