跳至主要內容
本頁面使用機器翻譯自英語,可能包含錯誤或不清楚的語言。如需最準確的信息,請參閱英文原文。由於更新頻繁,部分內容可能與英文原文有出入。請加入我們在 Crowdin 上的努力,幫助我們改進本頁面的翻譯。 (Crowdin translation page, Contributing guide)

5. API & SDK 參考資料

5.1. SDK

GA 功能封裝在 -ext SDK 中,擴充了 ethers.js 和 web3.js 的功能。 如需詳細的 API 參考資料,請參閱套件庫。

Kaia Ethers-ext SDK

  • Repo:GitHub
  • 程式碼範例:gasless.js
  • Code Example with Tutorial
  • 關鍵方法: gasless.getGaslessSwapRoutergasless.getAmountRepaygasless.getMinAmountOutgasless.getAmountIngasless.getApproveTxgasless.getSwapTx

Kaia Web3js-ext SDK

  • Repo:GitHub
  • 程式碼範例:gasless.js
  • Code Example with Tutorial
  • 關鍵方法: web3.gasless.getGaslessSwapRouter, web3.gasless.getAmountRepay, web3.gasless.getMinAmountOut, web3.gasless.getAmountIn, web3.gasless.getApproveTx, web3.gasless.getSwapTx.

5.2. JSON-RPC API

kaia_sendRawTransactions 接受一個陣列有簽章、RLP 編碼的原始交易,其 type byte 是 Ethereum 系列之一 (0x00 Legacy、0x01 EIP-2930、0x02 EIP-1559、0x04 Blob)。 將它用於 GA 對 ApproveTx + SwapTx,這是一般的 EVM 類型。

Kaia 特有的類型,例如 0x30(Smart-Contract Execution)仍必須使用舊的單次傳送方法 klay_sendRawTransaction 來傳送。

典型流量:

  1. 建立並簽署 ApproveTx + SwapTx → 使用 kaia_sendRawTransactions 傳送
  2. 建立並簽署使用者的 AppTx → 根據交易類型,使用 eth_sendRawTransactionklay_sendRawTransaction 傳送

由於交易是以 nonce 排序,因此 AppTx 會在 bundle 之後執行,即使它是透過另一個端點傳送。

如果您只有一個交易要傳送(即 SwapTx),您總是可以回到 eth_sendRawTransaction

讓這個頁面變得更好