我在angularjs中很新,我正在开发我的第一个应用程序。我在另一个系统中准备了一个不可触及的后台Restful服务,并开发了我的服务。此代码:本地开发不可能出现错误:没有'访问控制允许来源'标题出现在所请求的资源上
var MainService = angular.module('MainService', [])
MainService.factory('MainData', ['$http', function ($http) {
var urlBase = 'http://demoint:1234/rest.oms/basvc/barest';
var MainData = {};
MainData.getData = function() {
return $http.get(urlBase + '/0/usecases?generation=true&UseCase=0.0.3550d.a6000015');
};
console.log(MainData);
return MainData;
}]);
但后来我得到我的浏览器这个错误: 的XMLHttpRequest无法加载http://demoint:1234/rest.oms/basvc/barest/0/usecases?generation=true&UseCase=0.0.3550d.a6000015。请求的资源上没有“Access-Control-Allow-Origin”标题。原因'http://localhost:9000'因此不允许访问。
我试图绕开的问题在这些方面,但没有运气:
- 将这个选项Chrome浏览器(启动参数): - 禁用网络安全
- 添加此扩展https://chrome.google.com/webstore/detail/allow-control-allow-origi/nlfbmbojpeacfghkpbjhddihlkkiljbi?hl=en
添加以下代码配置我主要的应用程序:
.config(['$httpProvider', function ($httpProvider) { $httpProvider.defaults.useXDomain = true; $httpProvider.defaults.withCredentials = true; delete $httpProvider.defaults.headers.common["X-Requested-With"]; $httpProvider.defaults.headers.common["Accept"] = "application/json"; $httpProvider.defaults.headers.common["Content-Type"] = "application/json"; } ]);
有关如何解决的任何想法?
提前感谢! Fabio
了解,很好的解释。但我已经做了你的建议..第一点在我的尝试名单:-) – Micky
上次它为我工作。运行命令之前,你关闭了所有的chrome时间吗? –
不幸的是,我做了一个项目,当地所有的前端开发人员都使用该参数..我真的失去了所有这一次失望。一个我不能改变后端..所以需要修复它只有客户端.. – Micky