如何从其他域获取json数据?

时间:2016-03-11 10:30:27

标签: xmlhttprequest

我正在使用Angular应用。我需要从以下网址获取Json:

http://www.citibikenyc.com/stations/json

我尝试使用$http.get()$http.jsonp()

当我执行以下操作时

$http.get("http://www.citibikenyc.com/stations/json")
        .then(function (response) {
           console.log(response.data);
        });

我收到以下错误:

XMLHttpRequest cannot load [url that i use here]. 
No 'Access-Control-Allow-Origin' header is present on the requested resource. 
Origin 'http://localhost' is therefore not allowed access.

当我执行以下代码时:

$http.jsonp("http://www.citibikenyc.com/stations/json?callback=JSON_CALLBACK")
       .then(function (response) {
          console.log(response.data);
       });

我正在SyntaxError: Unexpected token :

1 个答案:

答案 0 :(得分:0)

看起来您尝试呼叫的服务/ API不允许您。您要做的是跨端脚本,除非在允许您的域的服务上有CORS策略,否则不允许这样做。 “http://localhost”不是此服务的有效域。