864
技術社區[雲棲]
關於通過ruby互聯網同步時間的幾個思路
我開始的思路是通過ruby的網絡抓包能力,直接從時間同步網頁抓取時間。但實際操作中發現很多時間網頁都用的是js腳本計算的時間,直接抓成html文件,本地打開後會發現時間顯示處都是空白。
比如網上朋友幫我分析的值:
那串數字是utc時間格式,是從1970年到現在的毫秒數,用ruby可以轉換為人可讀的格式:
Time.at(1402230499914.5/1000) => 2014-06-08 20:28:19 +0800
還有朋友提供了另一種思路,就是使用標準互聯網時間同步接口,比如:
https://time.nist.gov:13
可以通過telnet 方式連接,即可以通過編程方式取其返回值:
elnet time.nist.gov 13 Trying 24.56.178.140... Connected to ntp1.glb.nist.gov. Escape character is '^]'. 56816 14-06-08 13:34:37 50 0 0 840.8 UTC(NIST) * Connection closed by foreign host.
實際中這種方法偶爾會取不到值,可以用多個時間接口和反複獲取的方式解決。
感謝大家哦
最後更新:2017-04-03 07:56:55