CORS WebAPI和Web项目

时间:2016-05-13 11:27:23

标签: c# asp.net-mvc

我在ASP.NET MVC Web项目中有角度视图。这些角度脚本引用/ api / mycontroller /方法来获取数据。这个" / api / mycontroller /"是在同一个Web项目中。

现在我想将这些API移到WebAPI项目中。以及如何与此相关? Web中的角度应该与WebAPI项目进行通信。

两者都在同一解决方案中。

1 个答案:

答案 0 :(得分:0)

在不同的URL中发布您的Web API项目,引用该URL而不是角度应用程序中的当前URL,这应该是全部。每种方法的URL取决于您定义的路由。

如果您的Web API与角度应用程序位于不同的主机上,请将此HTTP标头添加到角度Web应用程序的服务器中:

Access-Control-Allow-Origin: http://webapihost.com

在任何Web服务器中设置此标头应该很容易。 如果您使用的是IIS 7+,请以这种方式修改您的webconfig:

<configuration>
   <system.webServer>
      <httpProtocol>
         <customHeaders>
            <add name="Access-Control-Allow-Origin" value="http://webapihost.com" />
         </customHeaders>
      </httpProtocol>
   </system.webServer>
</configuration>

add the header into the server's configuration manually