2012-02-26 5 views
1

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

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

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

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

ответ

2

Возможно, вы столкнетесь с каким-либо перекрестным сайтом scripting problems, поскольку браузер не позволит вам это сделать. См. the howto on that об этом. Вы также можете сделать это на стороне сервера, а затем запросить это у своего клиента. Зависит от используемой вами технологии на стороне сервера.

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

+0

Спасибо, это по крайней мере дает мне возможность начать. Это похоже на то, что мне, возможно, придется писать мои первые несколько строк php ... – jkjenner

+0

Вы также можете рассмотреть [node.js] (http://nodejs.org/). Я нашел это очень легким для небольших задач. Я недавно сделал node.js + [api_request] (https://github.com/adaburrows/api_request) в том же контексте, что и ваш. –

2

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

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