Ajax 谷歌金融如何更新股价?

Ajax 谷歌金融如何更新股价?,ajax,Ajax,如果你使用谷歌金融,你会看到股票价格的实时更新。但是,我没有看到ajax对每次价格变化的请求。它究竟是如何接收数据的?ajax调用确实经常发生,但不是每次价格变化都会发生 该图由Adobe Flash Player提供,因此我认为您不会通过inspector看到任何流量。不过,其余部分会生成调用: https://www.google.com/finance/getprices?q=AAPL&x=NASD&i=120&p=25m&f=d,c,v,o,h,l&

如果你使用谷歌金融,你会看到股票价格的实时更新。但是,我没有看到ajax对每次价格变化的请求。它究竟是如何接收数据的?ajax调用确实经常发生,但不是每次价格变化都会发生


该图由Adobe Flash Player提供,因此我认为您不会通过inspector看到任何流量。不过,其余部分会生成调用:

https://www.google.com/finance/getprices?q=AAPL&x=NASD&i=120&p=25m&f=d,c,v,o,h,l&df=cpct&auto=1&ts=1368199239667&ei=jw-NUcivEsmrqQGT7wE
这将是我所看到的一个例子

以下是服务器的响应:

EXCHANGE%3DNASDAQ
MARKET_OPEN_MINUTE=570
MARKET_CLOSE_MINUTE=960
INTERVAL=120
COLUMNS=DATE,CLOSE,HIGH,LOW,OPEN,VOLUME
DATA=
TIMEZONE_OFFSET=-240
a1368197880,452.2847,452.29,451.6,452.0101,35458
1,451.81,452.3,451.661,452.24,91267
2,452.2,452.3,451.8314,451.84,35767
3,451.91,452.3,451.8,452.3,89882
4,452.4575,452.61,451.88,451.88,45130
5,452.77,452.88,452.45,452.48,35866
6,453.626,453.9,453.27,453.3571,0
7,453.05,453.6599,453,453.61,0
8,452.9,453.17,452.83,453.09,0
9,452.58,453.15,452.4377,452.865,0
10,452.7568,453.068,452.45,452.475,0
11,452.53,452.8,452.302,452.75,0
另一个电话是:

https://www.google.com/finance/qs/channel?VER=8&SID=6C5BE78E1E7D9597&RID=82123&AID=500&zx=p0b0io9ifynn&t=1
其响应如下:

10
[1,500,0]

的确,图形是由flash提供的,但是股票的价格是HTML格式的,并且是实时更新的

通过查看连接,您会注意到其中一个连接保持打开状态。我的猜测是,它提供了以下数据:


我不知道,但我猜谷歌有足够的力量和兴趣从金融部门获取这些信息。我不关心它是如何获得价格变化的,而是当你在页面上时它是如何更新价格的。如果你右击该图表,你会看到它是基于flash的,所以它不需要是ajax;如果您只是想要一个类似于ajax的基于javascript的解决方案,那么使用jsonp()基本上是正确的答案。他们正在使用http流或推送。下面是获取数据的python代码