跳转至

/wallet/validateaddress

校验地址格式合法性(hex / base58check / base64 自动识别)。不查链,只做编码 + checksum 校验。

  • 源码:framework/src/main/java/org/tron/core/services/http/ValidateAddressServlet.java
  • Method:GET / POST

请求参数

GET 从 URL 查询参数读取以下字段;POST 从 JSON 请求体读取。

字段 方法 类型 必填 说明
address GET string 待校验地址,自动按长度判断格式:42 字符 hex / 34 字符 base58check / 28 字符 base64
address POST string 待校验地址;省略时返回 result=false 及异常信息(旧版 JVM 上该信息可能为 null)

示例:

curl --request POST \
     --url https://nile.trongrid.io/wallet/validateaddress \
     --header 'accept: application/json' \
     --header 'content-type: application/json' \
     --data '
{ "address": "41dd791d6b49e190062d650e6a23c575510d35f2f9" }
'

响应

字段 类型 说明
result bool 是否合法
message string Hex string format / Base58check format / Base64 format / Length error / Invalid address

响应示例:

{ "result": true, "message": "Hex string format" }

异常响应

地址解析层错误(长度不符、checksum 错误、base58/base64 解码失败等)通过 result=false + message 表达,不会返回 {"Error": ...} 形态。

有两类失败不会进入常规的 result=false 响应:超限请求体可能在 servlet 运行前被共享 HTTP 层拒绝,而非法 JSON 会在 doPost 内失败。后者的异常只会被捕获并记录日志,因此客户端收到 HTTP 200 + 空 body

方法 触发条件 响应
GET / POST 请求体超过 node.http.maxMessageSize 通常由 SizeLimitHandler 返回 HTTP 413 Payload Too Large
POST 请求体不是合法 JSON(POST) 空响应(JSON.parseObjectorg.tron.json.JSONException,被 catch 后丢弃)