问题标签 [rsk]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
47 浏览

rpc - 如何验证节点上运行的 RSK 版本?

我可以通过 RPC 访问 RSK 节点的私有部署,但不能直接访问文件系统。如何检查该系统上运行的 RSK 节点的版本?

0 投票
1 回答
72 浏览

docker - 是否有用于 dockerized RSK 节点的 docker-compose?

我需要一个用于 RSK 节点的 dockerized 版本的 docker-compose YAML 文件(请参见此处)。

它需要有一个用于配置文件的卷和另一个用于数据库的卷。

0 投票
1 回答
1566 浏览

bit-manipulation - Solidity 将 HEX 数字转换为 HEX 字符串

我需要在solidity智能合约中存储这种类型的值0xff00000x00ff08(十六进制颜色表示),并能够在合约中将其转换为具有相同文本字符的字符串"ff0000"。我打算在 RSK 上部署这个智能合约。

我的想法是将这些值存储在一个bytes3或简单的uint变量中,并有一个纯函数转换bytes3或转换uint为相应的字符串。我找到了一个可以完成这项工作并在solidity 0.4.9上工作的函数

但我需要更新的编译器版本(至少 0.8.0)。上述功能不适用于较新的版本。

在 Solidity >=0.8.0 中有效的转换bytes或转换为十六进制字符串 (1->'1',f->'f') 的方法是什么?uint

0 投票
1 回答
1268 浏览

bit-manipulation - 如何在 Solidity 中将 bytes3 转换为 HEX 字符串

我之前询问过将 uint 转换为 hex string。现在我想将一个 HEX 值存储0x00ff08在一个bytes3变量中,并能够将其转换为stringSolidity 智能合约。随后,我打算将其部署在具有 Solidity 编译器版本至少为 0.8.0 的 RSK 上。

我试过了,但它会引发运行时错误string(abi.encodePacked(bytes3(0x00ff08)))

解码输出失败:null:偏移量 1 处的代码点无效;错误的代码点前缀 (argument="bytes", value={"0":0,"1":255,"2":8}, code=INVALID_ARGUMENT, version=strings/5.4.0)

不同的参数不会导致错误,但会返回一个非常奇怪的结果。这里可能是什么问题?如何转换为具有相同字符的 a?string(abi.encodePacked(bytes3(0x443322)))D3"bytes3string

0 投票
3 回答
269 浏览

bit-manipulation - 在 Solidity 中将 uint24 转换为 HEX 字符串

我正在尝试将一种类型的 uint24 值转换为具有相同字符0x00ff08的人类可读string的 Solidity 智能合约,我将在 RSK 上部署该合约。在我关于bytes3 到十六进制字符串转换的问题中,我被建议出于这些目的使用一个函数

我想在该函数中使用一个循环并像这样重写它

但不幸的是,这个函数会导致运行时错误,因为在最后一次迭代中,无符号整数k变为-1. 我首先想到的是将 k 加一,这样

谁能想到一种更优雅的方式来达到同样的效果?

0 投票
1 回答
96 浏览

solidity - 如何查询RNS域名的到期日?

除了直接查询之外,我还想订阅事件以在到期日期更改时进行监听(例如,当它更新时)

我发现它NodeOwner.sol有一个 实现看起来很有希望的available函数:

并且同一个文件还定义了一个 ExpirationChanged事件

我无法弄清楚的是:

  • 如何获取NodeOwner- 应该查询哪个合约/地址?
  • 如果有多个可能的地址/实例NodeOwner,或者只有一个。
0 投票
1 回答
58 浏览

rpc - 如何从 RSKj regtest 区块链节点的测试账户发送 web3 交易

我正在创建一个 DApp,它连接到部署在由 RSKj Java 应用程序运行的本地测试 RSK 区块链 (regtest) 上的智能合约。我打算通过连接到 Metamask 的 Web3 发送交易。在 DApp 中,我通过发送 Web3 请求来获取帐户列表:

此外,accounts将包含:

如何将这些账户(或至少其中的第一个)导入 Metamask,以便将交易发送到智能合约?

0 投票
1 回答
88 浏览

rsk - 在 Windows 机器上运行 RSKj 节点时如何修复 LevelDB 库加载错误?

我正在尝试在 Windows 机器上运行 RSK 区块链节点 RSKj。当我在终端中运行这一行时:

RSKj 节点开始运行,但出现以下错误:

这里可能是什么问题?

0 投票
1 回答
71 浏览

rsk - 如何将 RSK 节点暴露给外部网络?

我在将我的 RSK 节点暴露给外部 IP 时遇到问题。我的启动命令如下所示:

这是我的rsk.conf

API 可以从 localhost 访问,但从外部网络我得到错误 400。我如何将它暴露给外部网络?

0 投票
1 回答
69 浏览

sql - 如何从 Covalent DB 获取 RSK 上令牌的最新传输事件交易?

我正在查询 Covalent 数据库,以获取有关 RSK 上 rUSDT 代币转移交易的信息。RSK 区块链上的代币地址如下:

0xEf213441a85DF4d7acBdAe0Cf78004E1e486BB96

传输事件日志的哈希如下:

0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef

这是我的查询如下:

我希望获得最近 1000 次转账事件的交易汽油费,但由于某种原因,我从未收到此查询的回复。有人可以告诉我这里有什么问题吗?