我的应用程序会定期加载观看每日运动直播的观众数量。
我将dailymotion API与字段“audience”一起使用。
但是服务器正在向我发送一个真正古老的JSON文件的缓存版本。
例如,流媒体播放时间为2小时,但API会将此信息发送给我:
curl https://api.dailymotion.com/video/x25eyo8?fields=audience
{"audience":0}
如果我在几秒钟之后添加另一个字段,只需查看:
curl https://api.dailymotion.com/video/x25eyo8?fields=audience,onair
{"audience":1177, onair: true}
如果我重新发送第一个请求
curl https://api.dailymotion.com/video/x25eyo8?fields=audience
{"audience":0}
更有趣的是,服务器发送的标题显示:
curl -I https://api.dailymotion.com/video/x25eyo8?fields=audience
HTTP/1.1 200 OK
Server: DMS/1.0.42
X-Dm-Api-Object: video
X-DM-BackNode: web-011.adm.dailymotion.com:80
Cache-Control: public, max-age=10, stale-if-error=900
X-Dm-Api-Method: info
Content-Type: application/json; charset=UTF-8
X-DM-LB: 195.8.215.130
Access-Control-Allow-Origin: *
X-DM-BackNode-Response-Time: 47
Etag: W/"8xO_txIM6arAYYIALcRUgg"
X-Robots-Tag: noindex
Last-Modified: Fri, 06 Nov 2015 20:20:31 GMT
Access-Control-Allow-Headers: Content-Type, Authorization
Access-Control-Allow-Methods: GET, POST, DELETE
X-Dm-Page: fr.rest.rest_api
Via: 1.1 varnish
Fastly-Debug-Digest: 1d9daef237214a02cb79d06c44fdaa26329d5bd16c9afda535f3f9b104438b84
Content-Length: 17
Accept-Ranges: bytes
Date: Mon, 30 Nov 2015 01:16:59 GMT
Via: 1.1 varnish
Age: 116
Connection: keep-alive
X-Served-By: cache-fra1225-FRA, cache-lhr6323-LHR
X-Cache: HIT, MISS
X-Cache-Hits: 1, 0
Vary: X-DM-EC-Geo-Country, Accept-Encoding
年龄:116岁,最大年龄为10岁
即使我收到“最新”版本(年龄<10),该文件仍然包含0个观看者,而该流在线且有1000多个观看者正在观看。
现在有两个问题: 为什么会这样? 我可以强制使用非缓存版本吗?
感谢您的帮助。
编辑:
在http://games.dailymotion.com/上观看视频流时,看起来是同样的问题。对于所有频道,播放器内部的观众数量是正确的,但对于某些频道,其下显示的数字不是(大多数情况下,它表示0) Example of wrong number of viewers