跳转到主要内容

端点

端点就是一个 Node API 密钥。拥有套餐或试用后,您可以在控制台 → Node API 中创建端点。 每个端点都有:
  • 独立的密钥;
  • 独立的 IP 白名单;
  • 独立的用量计数器——本周期的 WU 和调用次数,显示在控制台中。
配额和每秒限制属于您的套餐,并由套餐下的所有端点共享:第二个端点给您的是另一个密钥和计数器,而不是更高的吞吐量。 可拥有的端点数量取决于套餐——参见套餐与计费。 密钥仅在创建端点时显示一次。如果丢失,请删除该端点并新建一个。在控制台中,您还可以编辑端点的 IP 白名单、停用和启用端点,以及删除端点:
在控制台中所做的更改——新建端点、新的 IP 白名单、停用或删除端点、续费付款——会在大约 30 秒内同步到节点网关。在此期间,刚创建的密钥可能会得到 401 unknown_key。

Node API 密钥与 REST API 密钥

Node API 密钥是一种独立的密钥类型。端点密钥只能在 node.tronrental.com 使用;TronRental REST API(api.tronrental.com)会以 403 NODE_API_KEY_ONLY 拒绝它。 反过来,您的 REST API 密钥也不能在节点上使用,在那里会得到 401 unknown_key。

通过 HTTP 传递密钥

在以下位置中的一处发送密钥: 请求头名称不区分大小写。路径中的密钥会在请求转发给节点之前被移除,因此节点永远看不到它。
一个请求只携带一个密钥。同一个密钥发送两次(例如同时放在路径和请求头中)没有问题;两个不同的密钥会以 400 key_conflict 被拒绝,因为我们无法判断应由哪一个付费。
路径中的密钥是 URL 的一部分,因此会出现在所有记录 URL 的地方:代理和应用日志、监控系统、浏览器历史记录。如果您的客户端允许设置请求头,请优先使用请求头。

库

TronWeb 会发送您提供给它的请求头:
tronpy 只会把 api_key= 发给它的默认地址,因此使用我们的地址时,它根本不会发送密钥。请自行在 provider 的会话上设置请求头——或者把密钥放在路径中,并带上末尾的斜杠:没有斜杠时,tronpy 会丢掉地址的最后一段,密钥也随之丢失。

通过 gRPC 传递密钥

在每次调用的 tron-pro-api-key 元数据中发送密钥(x-api-key 和 authorization: Bearer <YOUR_KEY> 也可以)。gRPC 没有可以携带密钥的路径。参见 gRPC。

IP 白名单

每个端点都可以限定为一组 IP 地址——IPv4 或 IPv6,精确地址,不支持地址段。列表为空时,密钥可从任意地址使用。设置列表后,来自其他地址的请求会得到 403 ip_not_allowed。 以 IPv6 形式书写的 IPv4 地址(::ffff:203.0.113.7)视同该 IPv4 地址本身。

浏览器应用(CORS)

Node API 响应来自任意来源的浏览器请求,因此 dApp 可以直接调用它:
浏览器代码中的密钥对打开您应用的每个人都可见,任何复制了它的人都会消耗您的配额。IP 白名单在这里帮不上忙——您用户的地址无法事先知道。 请为浏览器单独创建一个端点,留意它的计数器,一旦被滥用就将其删除:您服务器上的密钥仍可正常使用。