0

我在我的项目中使用 Node.js,我想知道 Yahoo Finance 发送到服务器机器和“常规”机器的内容有什么区别。

 var http = require('http');
    var link = "http://download.finance.yahoo.com/d/quotes?s=" + fromCurrency + toCurrency + "%3DX&f=l1n";
    http.request(link,
        function (response)
        {
            var str = '';
            response.on('data', function (chunk) {
                str += chunk;});
            response.on('end', function () {
                var rate = parseRate(str);
                console.log(rate);
                callback(sender, convert(howMuch, rate, fromCurrency, toCurrency));
            });
        }).end();

这是我的代码。当我在笔记本电脑上运行它时,它会返回正确的费率。但有趣的是,当我在服务器上运行它时,它会为某些货币发送错误的数据。例如,如果您尝试将 CAD 转换为 USD,它会说 1 cad 等于 95.88 美元。集结!

我想知道 - 也许我错过了什么?你能帮我吗?

4

1 回答 1

0

我认为您调用了错误的网络服务,请尝试:

var link = " https://query.yahooapis.com/v1/public/yql?q=select%20 *%20from%20yahoo.finance.xchange%20where%20pair%20%3D%20%22USDCAD%22&format=json&env =store%3A%2F%2Fdatatables.org%2Falltableswithkeys&callback="

在这里测试它:YQL 控制台

于 2016-04-25T13:08:50.697 回答