获取签名交易
为资源订单生成已签名的 TRX 支付交易——既可以使用你自己的代码,也可以通过 TronSave 的 Get Signed Transaction API 实现。
这是使用签名交易购买流程的第 2 步。在第 1 步 — 预估 TRX 返回 estimateTrx(购买订单的成本,以 SUN 为单位)之后,你需要生成一笔签名转账交易,从买家钱包向 TronSave 资金地址支付该金额。然后在第 3 步 — 创建订单中提交它。
你可以通过两种方式完成此操作:自己对交易签名(方案 1),或者让 TronSave API 替你签名(方案 2)。
方案 1:编写你自己的函数
使用第 1 步中得到的 estimateTrx 值,用 transactionBuilder 构建一笔 TRX 转账交易,从买家地址向 TronSave 资金地址发送等于 estimateTrx 的金额,然后用买家的私钥对其签名:
const dataSendTrx = await tronWeb.transactionBuilder.sendTrx('TRONSAVE_FUND_ADDRESS', estimate_trx, 'BUYER_ADDRESS')
const signed_tx = await tronWeb.trx.sign(dataSendTrx, 'PRIVATE_KEY');TronSave 资金地址(TRONSAVE_FUND_ADDRESS):
TWZEhq5JuUVvGtutNgnRBATbF8BnHGyn4S此资金地址仅供在 TRON Nile(测试网)网络上进行测试使用。
TATT1UzHRikft98bRFqApFTsaSw73ycfoS生成的 signed_tx 随后将传递给第 3 步 — 创建订单。
方案 2:使用 TronSave API
POST https://api.tronsave.io/v2/signed-tx
给定买家的地址、私钥以及第 1 步得到的 estimateTrx,此端点会替你构建并签名转账交易。
请求头
Content-Type
application/json
请求体
address
body
string
true
买家的公开地址。
privateKey
body
string
true
买家的私钥。
请求体示例
响应
错误
此端点不使用 apikey 请求头。整个流程的身份验证由第 3 步 — 创建订单中的签名交易本身提供;此端点仅负责构建并签名交易。因此,当请求格式有误时,它返回的是模式校验错误(400),而不是 401。
400 Bad Request — 缺少必填字段(address、privateKey 或 estimateTrx)或字段无效。message 会指出出错的字段:
404 Not Found — 路由/路径不正确:
请求示例
此端点需要在请求体中提供买家的 privateKey。请仅从受信任的服务器端环境调用它,切勿从客户端代码调用。如果你不希望发送私钥,请使用方案 1 在本地对交易签名。
后续步骤
Last updated