我有一个角度应用程序,可以从ASP.Net web api服务中检索数据。
web api托管在不同的域名上。
网络API包含多个用于查询不同类型数据的网址,例如site2/api/Employees
,site2/api/Managers
等。
web api具有全局配置,正常情况下,即没有为任何特定控制器进行特殊配置。
我在angularjs中创建了不同的控制器,并且每个控制器都有一个服务(复制粘贴代码,但我已经检查并正确更新了所有必需的引用)。
当我从site1中的角度代码访问site2/api/Employees
时,会从web api服务返回数据。
但是,当我从我的角度代码访问/site2/api/Managers
时,我收到错误选项:/site2/api/Managers
404未找到
XMLHttpRequest无法加载/site2/api/Managers
无效状态代码404
有人可以,为这个问题提供解决方案
答案 0 :(得分:0)
我不是angularjs用户,但我可以帮助你在角色
当浏览器允许跨域请求时,cors请求有效。
一种方法是允许Cors请求是通过客户端浏览器
另一种方法是将HTTP响应标头设置为从服务器端对Cors的所有访问
下面是我通过HTTP响应标题访问Cors的php代码
<?php
header('Access-Control-Allow-Origin: http://yourdomain.com');
header('Access-Control-Allow-Methods: POST, GET, OPTIONS, PUT, DELETE');
header('Access-Control-Allow-Headers', 'Content-Type');
我希望这对你有帮助..