1、先上代码
constructor(public http:Http, public jsonp:Jsonp) {
this.jsonp.request('http://www.eastgrain.cn/data/list.html?callback=JSONP_CALLBACK')
.map(res => res.json())
.subscribe((response) => {
console.log(response);
}, (error) => {
console.error(error);
});
}
2、报错信息
3、求大神讲解,谢谢。
你请求的地址,返回的数据不是
jsonp
格式的。jsonp
本质上是靠script标签实现的,通过script
加载一段js代码,并在加载完成时执行,为了达到这个效果,jsonp
返回数据应该是一个函数调用,类似这样func({data1:1,data2:2});
。这就需要服务器端程序配合,请求有callback参数时将该值拼接到
json
上。所以,如果网站是你的,你得改后台程序,别人的就考虑其他方法吧。