首页 新闻 会员 周边 捐助

WebApi跨域失败,怎么解决?

0
悬赏园豆:50 [已解决问题] 解决于 2015-08-24 09:29

有这么两个项目,一个WebApi项目,一个Mvc项目,mvc项目用来发出ajax请求调用WebApi的接口,现在我想对WebApi的接口做跨域设置,是Mvc的ajax可以实现跨域请求,一切要求都是按照微软WebApi跨域的那个文档教程上来实现的,且端口什么的都没有错误。但是Mvc却跨域失败……这是为什么?

这是两个项目的代码:

左边的是WebApi项目,右边的是Mvc项目。

求各位大神解决!!

blue顺子的主页 blue顺子 | 初学一级 | 园豆:189
提问于:2015-08-21 18:39
< >
分享
最佳答案
0

你没发现你配置的origins和你真正发起请求的地址是不一样的么?

收获园豆:40
幻天芒 | 高人七级 |园豆:37207 | 2015-08-22 09:18

恩恩,修改成一样的也是出错误的,

blue顺子 | 园豆:189 (初学一级) | 2015-08-24 08:28

错误已经解决,问题是原项目好像已经实现跨域,再次实现跨域的时候响应头中出现两个Access-Control-Allow-Origin项,然后就会出错!不知道是什么原因!不过谢谢了

blue顺子 | 园豆:189 (初学一级) | 2015-08-24 09:28

@blue顺子: 我记得webapi有专门实现CORS跨域的组件,只需要引入就行。

幻天芒 | 园豆:37207 (高人七级) | 2015-08-24 13:03

@blue顺子: 请问一下,你是怎样实现跨域的了。

平飞 | 园豆:212 (菜鸟二级) | 2015-08-26 17:44

@幻天芒: 恩恩,是的,没错,只不过引用前没有发现我的配置文件中已经设置过跨域了,已经修改过来了

blue顺子 | 园豆:189 (初学一级) | 2015-08-26 17:46

@可可甜心: 你好,你可以参考下这篇文章,它详细的介绍了WebApi实现跨域的步骤:http://www.asp.net/web-api/overview/security/enabling-cross-origin-requests-in-web-api

blue顺子 | 园豆:189 (初学一级) | 2015-08-26 17:47
其他回答(2)
0

跨域是不是需要用jsonp呢

收获园豆:10
Aiolos丶M | 园豆:353 (菜鸟二级) | 2015-08-21 21:28

CORS(跨域资源共享)也是可以的。

支持(0) 反对(0) 幻天芒 | 园豆:37207 (高人七级) | 2015-08-22 09:19

错误已经解决,问题是原项目好像已经实现跨域,再次实现跨域的时候响应头中出现两个Access-Control-Allow-Origin项,然后就会出错!不知道是什么原因!不过谢谢了

支持(0) 反对(0) blue顺子 | 园豆:189 (初学一级) | 2015-08-24 09:29
0

你可以自己构造一个返回的结构,这样它就能解析了。

hexd | 园豆:202 (菜鸟二级) | 2015-08-25 13:25
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册