角jsonp雅虎财务符号提出

时间:2015-07-15 02:59:08

标签: javascript angularjs jsonp yahoo-finance

我正在尝试在我的角度代码中使用{$ 3}跟随Yahoo Finance API调用。 Angular this要求回调参数为JSON_CALLBACK

角度回调格式

var url = 'http://autoc.finance.yahoo.com/autoc?query=Google&callback=JSON_CALLBACK';
var dfd = $q.defer();
$http.jsonp(url).success(function (data, status, headers, config) {
  console.log(data);
  dfd.resolve(data);
}).error(function (data, status, headers, config) {
  dfd.reject(status);
});

但是,除非将回调专门设置为YAHOO.Finance.SymbolSuggest.ssCallback,否则此API调用似乎会返回404。

我可以通过使用该回调使http请求像下面那样工作但是它在angular的范围之外。有没有办法以角度提出这个请求而不污染全局范围?

Yahoo回调格式

var url = 'http://autoc.finance.yahoo.com/autoc?query=Google&callback=YAHOO.Finance.SymbolSuggest.ssCallback';
var dfd = $q.defer();
$http.jsonp(url).success(function (data, status, headers, config) {
    console.log(data);
    dfd.resolve(data);
}).error(function (data, status, headers, config) {
    dfd.reject(status);
});
return dfd.promise;
};

// this has to be global for this to work! eww...
var YAHOO = {
    Finance: {
        SymbolSuggest: {
            ssCallback: function(r) {
                console.log(r);
            }
        }
    }
}

0 个答案:

没有答案