昨天根据项目组前端开发工程师反映,在浏览器端没法直接使用ajax访问后台接口获取数据,根据他的反映,我查阅了相关跨域的解决方案:html
一:使用jsonP,可是jsonP只能使用GET请求,彻底不符合我项目的状况,因而继续找,找到了————前端
二:WEBAPI.CORE,引用几篇文章(http://www.cnblogs.com/OpenCoder/p/6890703.html,http://www.cnblogs.com/OpenCoder/p/6893052.html)web
详细介绍了跨域的缘由以及解决方法,下面就我使用的时候遇到的问题进行说明ajax
使用Nuget下载程序包Microsoft.AspNet.WebApi.Cors 5.2.3.0,在使用过程当中,发现这个版本只能兼容.net4.5以上的版本,因为个人项目以前建的是4.0,所以修改属性为4.5,修改以后,不少的.dll版本与4.5不对应,因而更新了那些dll引用,这里特别要注意Microsoft.Net.Http这个dll,应该与cors的版本一致,这些东西都修改好了之后,编译经过,可是在加载路由的抛异常了,json
异常为:安全透明方法“System.Web.Http.GlobalConfiguration.get_Configuration()”尝试。。。。跨域
找了不少的方法,涉及到不少的知识,最终采用了这个帖子解决了跨域访问的问题(https://stackoverflow.com/questions/18476370/how-do-i-resolve-the-error-attempt-by-security-transparent-method-system-web-h)浏览器
使用install-package 'Microsoft.AspNet.WebApi.OData -pre
安全