Web3js
乙太坊區塊時間戳
區塊的時間戳是指該區塊的創建時間還是由礦工開采的時間?
假設我使用以下 NodeJS 程式碼(使用 web3)訂閱新的傳入塊:
web3.eth.subscribe('newBlockHeaders', function(error, block){ console.log(block.number); console.log(block.timestamp); console.log(...computer unix timestamp...); }
我正在列印的區塊號是指最新開采的區塊?
如果我是正確的,為什麼如果我獲取該塊時間戳並將其與目前的 Unix 時間進行比較,它們會有所不同?
例如從上面的程式碼我得到:
Mined Block number: 11263715 Mined Block timestamp: 1605460505 Unix current timestamp: 1605460537
區塊的時間戳是指該區塊的創建時間還是由礦工開采的時間?
是的。
我正在列印的區塊號是指最新開采的區塊?
它指的是您節點上的最新塊。這些資訊在整個網路中是不同的,直到幾個塊之後有一些統計確認。塊可以重組,並且經常發生新的鏈尖的小重組。
f 我是對的,為什麼如果我獲取該塊時間戳並將其與目前的 Unix 時間進行比較,它們會有所不同?
如果您不是礦工,您看到的最新區塊需要一些時間才能在網路中傳播。