(转)Asp.NET MVC+WebAPI跨域调用
2017-04-10 10:15:31
使用jQuery调用WebApi有时会遇到跨域的问题,今天介绍一种可以简单解决跨域问题的方法。
当我们跨域请求WebAPI的时候会提示以下信息:
XMLHttpRequest cannot load http://localhost:9641/api/news/GetData. No 'Access-Control-Allow-Origin' header is present on the requested resource.
Origin 'http://localhost:9530' is therefore not allowed access.
像这种情况,只需要在WEBAPI项目的Web.Config配置文件中设置
Access-Control-Allow-Origin 即可
1
2
3
4
5
6
7
8
9
|
|
这段配置文件需要加在WebAPI的Web.config 中
注:如遇到Post请求时,提示404,排除URL不符合路由规则外,还需注意是否有加 [FromBody] ,且[FromBody]只能修饰一个参数,如果需要传多个参数时,需要封装成对象。
这是我写的小例子。:-D
http://download.csdn.net/detail/u010822637/9634076
如果你只想整个API只对某一个域使用就将Web.Config
如果只是针对某一个控制器或者方法时,只需要加一个ActionFilterAttribute过滤器重写OnActionExecuted方法,在里面做验证即可。
发表评论: