Spring boot
でRESTful API
を作成し、Pivotal web services
でホストします。Spring RESTfulでPivotal Webサービスでホストされている 'Access-Control-Allow-Origin'エラーがありません
のは、URLがhttps://abc.cfapps.io/studentsで言ってみましょうとJSONの結果は、その後
[
{"id":1,"name":"Michael","score":8.5},
{"id":2,"name":"Naomi","score":5.6}
]
私はそのURLへのリクエストを送信するために角度クライアントを書くようになります。
angular.module("app", []).controller("listController", function($scope, $http)
{
var url = 'https://abc.cfapps.io/students';
var httpRequest = new XMLHttpRequest();
httpRequest.open('GET', url, true);
httpRequest.setRequestHeader('Access-Control-Allow-Origin', '*');
httpRequest.setRequestHeader('Content-Type', 'application/json');
httpRequest.onerror = function (XMLHttpRequest, textStatus, errorThrown) {
console.log('failed');
console.log(JSON.stringify(XMLHttpRequest));
};
httpRequest.onload = function() {
console.log('SUCCESS!');
}
httpRequest.send();
});
localhost:52442
で私のクライアントの実行と私のSpring boot service
でもCORS
も許可します。
@RestController
@CrossOrigin(origins = "http://localhost:52442")
@RequestMapping(value="/students")
public class StudentService
{
@RequestMapping(value="/",method = RequestMethod.GET)
public ArrayList<Student> getListStudents()
{
// return list
}
// other methods
}
しかし、私はこのエラーを取得しておいてください。
XMLHttpRequest cannot load https://abc.cfapps.io/students.
Response to preflight request doesn't pass access control check:
No 'Access-Control-Allow-Origin' header is present on the requested resource.
Origin 'http://localhost:52442' is therefore not allowed access. The response had HTTP status code 403.