如果你看看the docs,你必须通过jsonp
作为jsonpCallbackParam
,使角使用正确的URL请求。它是GET参数的名称,而不是回调函数的名称。另外,路径是route.json
而不是route.jsonp
。
$http.jsonp("http://www.distance24.org/route.json?stops="+city+"|"+country, {
jsonpCallbackParam: 'jsonp'
}).then(function(data) {
console.log(data);
alert(data.distance);
});
另外,您还可以使用
$http.jsonp("http://www.distance24.org/route.json", {
params: {stops: city+"|"+country},
jsonpCallbackParam: 'jsonp'
})
角V1.6之前,没有jsonpCallbackParam
配置价值。相反,你会使用
$http.jsonp("http://www.distance24.org/route.json?jsonp=JSON_CALLBACK&stops="+city+"|"+country)
或
$http.jsonp("http://www.distance24.org/route.json", {params: {
"stops": city+"|"+country,
"jsonp": "JSON_CALLBACK"
}})
检查从服务器的响应 - 这很可能是你在服务器端错误。 – user2182349
它更有可能从该URL获得HTML响应 –
正确,它是HTML。我如何使它成为JSON? – adace1