HTTP Get Request の送信に AngularJS $http を使用しています。
$http({
method: 'get',
url: 'http://cross-domain-url/api/v1/service1',
params : {'key1' : 'value1'},
data:'',
headers : {'Accept': 'application/JSON',
'Content-Type' : 'application/JSON'},
cache : false
}).then(function (response) {
$waitDialog.hide();
return response;
});
しかし、これにより、「Origin localhost is not allowed by Access-Control-Allow-Origin.」というエラーが発生します。
しかし、メソッドを JSONP に変更すると、正しい応答が得られますが、その応答は XML です。content-type は JSONP を使用して設定できないため、その API はデフォルトで application/xml タイプを使用します。XML でデータを返すサードパーティ API からデータを要求する方法はありますか。?
PS: 第三者が他の誰かによって制御されているため、データのデフォルトの応答タイプを変更することはできません。