webapi接口在ajax调用的很多情况下都会出现跨域问题,同样的WebService如果想用ajax调用,也需要接口跨域问题,解决方案如下:
1、IIS配置
打开IIS选择发布后的webapi或者是WebService,选择网站-->选择HTTP 响应表头-->添加。。操作如下:
需要添加的名称和值为
1
2
3
|
< add name = "Access-Control-Allow-Methods" value = "OPTIONS,POST,GET" />
< add name = "Access-Control-Allow-Headers" value = "x-requested-with,Content-Type" />
< add name = "Access-Control-Allow-Origin" value = "*" />
|
2、直接在web.config中添加标签
1
2
3
4
5
6
7
8
9
|
< system.webServer >
< httpProtocol >
< customHeaders >
< add name = "Access-Control-Allow-Methods" value = "OPTIONS,POST,GET" />
< add name = "Access-Control-Allow-Headers" value = "x-requested-with,Content-Type" />
< add name = "Access-Control-Allow-Origin" value = "*" />
</ customHeaders >
</ httpProtocol >
</ system.webServer >
|
切记。两种方法只能采用一种,否则会报错。
以上这篇完美解决api、WebService跨域的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持服务器之家。
原文链接:http://www.cnblogs.com/highest/p/8252607.html