0

Я использую Node.js для своего проекта, и мне интересно, есть ли разница между тем, что Yahoo направляет на серверную машину и «обычную» машину.Yahoo Финансы посылает неправильный обменный курс на сервер

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 к доллару США, он скажет, что 1 кадр равен 95,88 долларов США. Aggrr!

Мне интересно - может, я что-то пропустил? Вы можете помочь?

ответ

0

Я думаю, что вы звоните неправильный WebService, попробуйте:

уаг ссылку = "https://query.yahooapis.com/v1/public/yql?q=select%20 *% 20from% 20yahoo.finance.xchange% 20where% 20pair% 20% 3D% 20% 22USDCAD% формат 22 & = & окр JSON = магазин% 3A% 2F% 2Fdatatables.org% 2Falltableswithkeys & обратного вызова =»

Попробуй здесь: YQL console

+0

Хех. Тот же результат. Посмотрите, что я получаю в ответ {«запрос»: {«count»: 2, «created»: «2016-04-25T13: 32: 27Z», «lang»: «en-US», «results»: {" »« [»« id »:« CAD »,« Name »:« PIMCO Canada Bond Index Exchang »,« Rate »:« 95.879 »,« Date »:« 9/25/2014 »,« Time »: 4:00 вечера», "Ask": "N/A", "Bid": "N/A"}, { "ID": "USD = X", "Имя": "USD/USD", "Скорость" : «1.0000», «Date»: «1/29/2016», «Time»: «8:25 am», «Ask»: «1.0000», «Bid»: «1.0000»}]}}} – Jan

+0

Я имею в виду - Когда я запрашиваю результат вручную, я получаю правильный ответ. Проблема в другом месте. – Jan

Смежные вопросы