Asp.Net MVC 中实现跨域访问

发布时间:2017-3-23 12:20:58 编辑:www.fx114.net 分享查询网我要评论
本篇文章主要介绍了"Asp.Net MVC 中实现跨域访问 ",主要涉及到Asp.Net MVC 中实现跨域访问 方面的内容,对于Asp.Net MVC 中实现跨域访问 感兴趣的同学可以参考一下。

[EnableCors(origins: "http://mywebclient.azurewebsites.net", headers: "*", methods: "*")]    public class TestController : ApiController    {        // Controller methods not shown...    }

但在MVC中不能使用这个,需要自定义一个类:

public class AllowCrossSiteJsonAttribute: ActionFilterAttribute    {        private string[] _domains;        public AllowCrossSiteJsonAttribute(string domain)        {            _domains= new string[] { domain };        }        public AllowCrossSiteJsonAttribute(string[] domains)        {            _domains = domains;        }        public override void OnActionExecuting(ActionExecutingContext filterContext)        {            var context = filterContext.RequestContext.HttpContext;            var host = context.Request.UrlReferrer?.Host;            if (host != null && _domains.Contains(host))            {                filterContext.RequestContext.HttpContext.Response.AddHeader("Access-Control-Allow-Origin", "*");            }            base.OnActionExecuting(filterContext);        }    }

在被访问的控制器上加上AllowCrossSiteJson:

[AllowCrossSiteJson("localhost")]        public JsonResult Index()        {            var holidays = new List<Holiday>            {                new Holiday                {                    Title="2 Weeks in Rhodes",                    Price=688,                    ImgUrl="http://media.wiley.com/product_data/coverImage/84/04702927/0470292784.jpg"                },                new Holiday                {                    Title="1 Weeks in Barbados",                    Price=320,                    ImgUrl="http://media.wiley.com/product_data/coverImage/84/04702927/0470292784.jpg"                }            };            return Json(holidays, JsonRequestBehavior.AllowGet);        }

上一篇:使用FileSystem类进行文件读写及查看文件信息
下一篇:推荐一款开源的C#TCP通讯框架

相关文章

相关评论

本站评论功能暂时取消,后续此功能例行通知。

一、不得利用本站危害国家安全、泄露国家秘密,不得侵犯国家社会集体的和公民的合法权益,不得利用本站制作、复制和传播不法有害信息!

二、互相尊重,对自己的言论和行为负责。

好贷网好贷款