Angularjs 无法加载XMLHttpRequesthttps://myserver1:8281/myurl/ext. 飞行前问题
我知道已经有人问过同样的问题来解决飞行前的问题,提供了很多解决方案,但我几乎都试过了,但都没有帮到我 我有一个用java编写的RESTAPI(Sprint),并在js中调用它。我的服务正在被呼叫,并且正在获得成功。我编写了java代码,我已经为重定向编写了代码,但方向没有发生,我在浏览器控制台中遇到以下错误: 无法加载XMLHttpRequest。对飞行前请求的响应未通过访问控制检查:“访问控制允许来源”标头包含多个值“*”,但只允许一个值 我尝试在标题中添加“Access Control Allow Origin”:“*”,但仍然面临问题。还尝试在标头中允许的方法中添加选项 下面是我的js代码:Angularjs 无法加载XMLHttpRequesthttps://myserver1:8281/myurl/ext. 飞行前问题,angularjs,spring-mvc,Angularjs,Spring Mvc,我知道已经有人问过同样的问题来解决飞行前的问题,提供了很多解决方案,但我几乎都试过了,但都没有帮到我 我有一个用java编写的RESTAPI(Sprint),并在js中调用它。我的服务正在被呼叫,并且正在获得成功。我编写了java代码,我已经为重定向编写了代码,但方向没有发生,我在浏览器控制台中遇到以下错误: 无法加载XMLHttpRequest。对飞行前请求的响应未通过访问控制检查:“访问控制允许来源”标头包含多个值“*”,但只允许一个值 我尝试在标题中添加“Access Control Al
$scope.validateToken = function(){
var config = {
headers : {
'ContentType': 'application/x-www-form-urlencoded',
'Accept': 'application/json',
'Pragma': 'no-cache',
'Cache-Control': 'no-cache',
'Expires': '-1',
'X-Requested-By': 'test'
},xhrFields: {
'Access-Control-Allow-Origin':'*',
'Access-Control-Allow-Headers' : 'Origin, X-Requested-With, Content-Type, Accept',
'Access-Control-Allow-Methods' : 'GET,PUT,POST,OPTIONS'
}
};
$http.get($scope.getUrl, {headers:{'token': $scope.ssoLinkData.token}}).success(function(data, status, headers, config){
}).error(function (data, status, header, config) {
$scope.ResponseDetails = "Data: " + data +
"<hr />status: " + status +
"<hr />headers: " + header +
"<hr />config: " + config;
});
在看到一些与此问题相关的帖子后,我在java代码中添加了标题信息。但这也无助于我
有人能帮我吗?提前感谢您是否尝试过这样做:
myApp.config(['$httpProvider', function ($httpProvider){
$httpProvider.defaults.headers.post = {}; //to override the $http post service, hence avoiding browsers encapsulation of post over OPTIONS
}]);
这将覆盖默认的飞行前请求,并将“选项”添加到您的API响应标题中应该可以解决此问题。下面是我在浏览器控制台中遇到的完整错误:XMLHttpRequest无法加载。对飞行前请求的响应未通过访问控制检查:“访问控制允许来源”标头包含多个值“*”,但只允许一个值。因此不允许访问源代码“”。我遵循了以下URL,但没有帮助:我尝试了您建议的解决方案,但仍然遇到以下错误:XMLHttpRequest无法加载。对飞行前请求的响应未通过访问控制检查:“访问控制允许来源”标头包含多个值“*”,但只允许一个值。因此不允许对源“”进行访问。您使用的是哪台服务器?我也遇到了类似的问题,我不得不对tomcat服务器的web.xml进行更改。我使用Jboss作为后端代码,使用nginx作为前端代码
myApp.config(['$httpProvider', function ($httpProvider){
$httpProvider.defaults.headers.post = {}; //to override the $http post service, hence avoiding browsers encapsulation of post over OPTIONS
}]);