2012-03-06 232 views
1

怎麼辦?我是一個初學者編碼器 - 完整的參考和代碼將有所幫助。我從字面上花了5個小時試圖找到一個解決方案 - 有一些在線參考,但沒有任何作品!我沒有訪問NTP服務器,是的,我必須使用公共服務器 - 如time.nist.gov。從time.nist.gov獲取時間使用JavaScript的NTP服務器?

幫助!!!

+1

這是一個相當大的問題stackoverflow(也「完整的引用和代碼將幫助」是一個不對我來說......)。無論如何,您需要向PHP(或其他)腳本發出請求,然後使用PHP與NTP服務器交互或使用命令行工具。 – Corbin 2012-03-06 01:40:48

回答

1

簡短回答: 不可行。

龍答: 即使跨域政策將允許它,也沒有辦法直接通過Ajax獲得NTP沒有PHP(或東西)中繼您的要求。第一個原因是時間服務器通常停留在UDP端口123上; Ajax無法做UDP;如果這還不夠,當Ajax向服務器發送請求時,它希望能夠看到一些HTTP頭,一些狀態碼,一個響應主體等。NTP不保留該結構,它只發送一個字符串。並且HTML5中也沒有原始的套接字連接支持。

但是你可以使用Ajax做的是看看請求頭,因爲大多數的反應回來一個頭,看起來像這樣:

Date:Mon, 21 May 2012 15:30:58 GMT 

而且有你的時間。

相關問題