Как загрузить данные http с помощью JavaScript? - PullRequest
1 голос
/ 26 февраля 2012

Я пытаюсь создать очень простой фрагмент JavaScript, который читает и отображает пару фондовых индексов при загрузке веб-страницы.

Я надеялся найти RSS-ленту с этими данными, которую затем мог бы проанализировать с помощью jQuery.parseXML, но не смог отследить ее. Я обнаружил, что this : Yahoo Finance предоставляет способ загрузки биржевых данных в формате CSV, определяя, какие данные вам нужны через URL.

Итак, я думаю, что это может быть способ узнать, что я ищу: когда страница загружена, я могу отправить запрос в Yahoo Finance, а затем как-то проанализировать данные CSV чтобы получить данные, мне нужно заполнить котировку акций. Мой вопрос относится к вышеупомянутому «как-то». Есть ли способ сделать это через JavaScript? Можно ли, например, каким-то образом загрузить CSV, сгенерированный Yahoo Finance, в виде строки?

Я также очень открыт для любых других предложений о том, как этого добиться. Если кто-то, например, знает о RSS-канале, из которого я могу получить индекс S & P / TSX Composite, пожалуйста, дайте мне знать!

Ответы [ 2 ]

2 голосов
/ 26 февраля 2012

JavaScript по умолчанию запрещен для междоменных запросов, если вы не используете JSON-P в качестве формата, а запрос CSV напрямую из другого домена не будет разрешен.Поэтому это немного проблематично.В этом случае вам, вероятно, придется настроить прокси в вашем собственном домене, который будет извлекать данные со стороны сервера Yahoo и отправлять их на ваш JavaScript из вашего собственного домена.

2 голосов
/ 26 февраля 2012

Вы, вероятно, столкнетесь с некоторыми межсайтовыми проблемами со сценариями , так как браузер не позволит вам этого сделать.См. инструкции по этому вопросу о том, как этого избежать.Вы также можете сделать это на стороне сервера, а затем запросить это у своего клиента.Зависит от используемой вами серверной технологии.

После этого анализ CSV не должен быть проблемой.Используйте что-то вроде string.split в каждой строке.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...