【发布时间】:2016-11-11 04:14:45
【问题描述】:
我正在尝试从 Rest Api 获取数据:
我尝试了以下操作:
var headers: Headers= new Headers({ 'dataType': 'jsonp'});
let options = new RequestOptions({ headers: headers });
return this.http.get('http://aaaddds.de/redmine/issues.json?limit=1200&callback=JSONP_CALLBACK', options)
.map(this.extractData);
它不起作用,因为:
No 'Access-Control-Allow-Origin' header
所以当我尝试 JSONP 时
let params = new URLSearchParams();
params.set('callback', 'JSONP_CALLBACK');
params.set('project_id', '7');
params.set('key', '42d3db30ab061a9f630df1f476c4d127f98d5ad2');
params.set('limit', '1200');
return this.jsonp.get('http://aaaddds.de/redmine/issues.json', { search: params })
.map(this.extractData);
上面写着:
未捕获的 ReferenceError: __ng_jsonp____req0finished 未定义 JSONP 注入脚本没有调用回调
当我执行 Jquery ajax 时,它会起作用:
$.ajax({
url: url,
type: 'GET',
dataType: 'jsonp',
success: function (datsa: any) {
console.log(datsa);
},
error: function (e : any) { alert(e.toString) },
});
【问题讨论】: