webapi 解决ajax跨域请求问题

Posted 尘嚣之上

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了webapi 解决ajax跨域请求问题相关的知识,希望对你有一定的参考价值。

webapi在配置文件中加入这几句就可以解决ajax(同源策略是javascript里面的限制,其他的编程语言,比如在C#,Java或者ios等其他语言中是可以调用外部的WebService,也就是 说,如果开发Native应用,是不存在这个问题的,但是如果开发Web或者html5如WebApp,通常使用JavaScript ajax对WebService发起请求然后解析返回的值,这样就可能存在跨域的问题。)跨域请求调用的问题?为什么呢?

<system.webServer>
    <validation validateIntegratedModeConfiguration="false" />
    <modules runAllManagedModulesForAllRequests="true" />
    <httpProtocol>
      <customHeaders>
        <add name="Access-Control-Allow-Origin" value="*" />
        <add name="Access-Control-Allow-Headers" value="Content-Type" />
        <add name="Access-Control-Allow-Methods" value="GET, POST, PUT, DELETE, OPTIONS" />
      </customHeaders>
    </httpProtocol>

 

原来这是浏览器基于安全的考虑,当跨域请求时,浏览器收到响应消息后,只有文件头消息中含有Access-Control-Allow-Origin属性才可以将消息主体的数据进行处理。

 

以上是关于webapi 解决ajax跨域请求问题的主要内容,如果未能解决你的问题,请参考以下文章

WebAPI Ajax 跨域请求解决方法(CORS实现)

Ajax 请求请求 MVC WebAPI跨域问题;XMLHttpRequest cannot load

web api 跨域请求,ajax跨域调用webapi

C#+.netFrameWork4.5.2+WebAPI+Jquery+Ajax跨域请求问题

AJAX跨域调用ASP.NET MVC或者WebAPI服务的解决方案

关于AJAX跨域调用ASP.NET MVC或者WebAPI服务的问题及解决方案