可以使用Chainlink函数中的Date.now()来获取当前时间和日期吗?

问题描述 投票:0回答:1

如标题所示,向Chainlink Functions发出请求时,可以使用Date.now()吗?为什么/为什么不?或者向第 3 方 API 发出请求并检索和聚合当前时间数据通常是更好的做法吗?

javascript blockchain chainlink chainlink-keepers
1个回答
0
投票

你可以运行这样的东西,

return Functions.encodeUint256(Date.now())
, 在你的函数中没有问题。

我会对在区块链环境中使用精确日期/时间持谨慎态度,因为结果不会立即存储在链上。

请参阅 solidty 文档

中的注释

不要依赖

block.timestamp
blockhash
作为随机性来源,除非你知道自己在做什么。

时间戳和区块哈希都会在一定程度上受到矿工的影响。例如,采矿社区中的不良行为者可以在选定的哈希上运行赌场支付功能,如果他们没有收到任何钱,则只需重试不同的哈希。

当前区块时间戳必须严格大于最后一个区块的时间戳,但唯一的保证是它将位于规范链中两个连续区块的时间戳之间。

© www.soinside.com 2019 - 2024. All rights reserved.