Javascript CORS原因:CORS头&x2018;访问控制允许原点’;角Js中缺少
我刚刚开始学习Angular,正在使用Oracle Fusion HCM的REST API。 在Netbeans Tomcat中运行该项目时,以及作为部署到Oracle Java cloud service的war文件,我得到了以下firefox或chrome的调试控制台原因:CORS标头“Access Control Allow Origin”丢失 我理解在一个简单的google搜索中这是什么,它是一个服务器限制,需要在RESTAPI的服务器中进行配置 但请相信我,我在纯javascript函数中运行了相同的RESTAPI,它可以毫无问题地检索值。 那么,有人能帮我找出下面的角度代码中的错误吗Javascript CORS原因:CORS头&x2018;访问控制允许原点’;角Js中缺少,javascript,angularjs,rest,Javascript,Angularjs,Rest,我刚刚开始学习Angular,正在使用Oracle Fusion HCM的REST API。 在Netbeans Tomcat中运行该项目时,以及作为部署到Oracle Java cloud service的war文件,我得到了以下firefox或chrome的调试控制台原因:CORS标头“Access Control Allow Origin”丢失 我理解在一个简单的google搜索中这是什么,它是一个服务器限制,需要在RESTAPI的服务器中进行配置 但请相信我,我在纯javascript函
<html>
<head>
<title>Employee Details Using AngularJS</title>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.6.4/angular.min.js"></script>
</head>
<body>
<div ng-app="myApp" ng-controller="myCtrl">
<p>Employee Details from JCS-SX</p>
<p>{{myWelcome}}<p>
</div>
<script>
var app = angular.module('myApp', []);
app.controller('myCtrl', function($scope, $http) {
$http({
method : "GET",
url : "https://****-test.hcm.em2.oraclecloud.com/hcmCoreApi/resources /11.1.11/emps/",
headers:
{
'Authorization': 'Basic ' +'ZmDSAScsSDdsSASC=',
'Content-Type': 'application/jsonp; charset=utf-8'
}
}).then(function mySuccess(response) {
$scope.myWelcome = response.data;
}, function myError(response) {
$scope.myWelcome = response.statusText;
});
});
</script>
</body>
</html>
使用AngularJS的员工详细信息
来自JCS-SX的员工详细信息
{{myWelcome}}
var-app=angular.module('myApp',[]);
app.controller('myCtrl',函数($scope,$http){
$http({
方法:“获取”,
url:“https://**-test.hcm.em2.oraclecoud.com/hcmCoreApi/resources/11.1.11/emps/”,
标题:
{
“授权”:“基本”+“zmdsacsddsssasc=”,
“内容类型”:“应用程序/jsonp;字符集=utf-8”
}
}).then(函数mySuccess(响应){
$scope.myWelcome=response.data;
},函数myError(响应){
$scope.myWelcome=response.statusText;
});
});
您需要在API服务器上添加中间件accept cross domain您需要明确允许前端域访问后端。如果您正在开发,您可以将“访问控制允许来源”标题设置为与您的请求“来源”标题相同:
(这是python代码,但您应该能够在后端实现相同的代码)
在生产中,您应该明确地将“访问控制允许来源”设置为与前端域相同。配置后端,以便它可以接受您的请求
resp.set_header("Access-Control-Allow-Origin", self.set_allowed_origin_header(req.get_header('Origin')))