Skip to main content

获取可用代币

getTokens

获取指定链上所有可用代币的列表。 参数
  • client (SDKClient): SDK 客户端实例。
  • params (TokensRequest, 可选): 所请求代币的配置。
    • chains ((ChainId | ChainKey)[], 可选): 链 ID 或键的列表。如果未指定,则返回所有可用链上的代币。
    • chainTypes (ChainType[], 可选): 链类型列表。
    • extended (boolean, 可选): 当为 true 时,返回带有额外代币数据的 TokensExtendedResponse。默认值:false
    • minPriceUSD (number, 可选): 返回代币的最低美元价格过滤器。
    • orderBy (TokensSortOrder, 可选): 代币列表的排序顺序。
    • limit (number, 可选): 要返回的最大代币数量。
    • search (string, 可选): 用于按名称或符号过滤代币的搜索查询。
    • tags (TokenTag[], 可选): 按标签过滤代币。
  • options (RequestOptions, 可选): 其他请求选项。
返回值 一个 Promise,解析为 TokensResponse,或在设置 extended: true 时解析为 TokensExtendedResponse
Example

getToken

获取指定链上特定代币的详细信息。 参数
  • client (SDKClient): SDK 客户端实例。
  • chain (ChainKey | ChainId): 包含该代币的链的 ID 或键。
  • token (string): 所请求链上代币的地址或符号。
  • options (RequestOptions, 可选): 其他请求选项。
返回值 一个 Promise,解析为 TokenExtended 对象。
Example

获取代币余额

请确保您首先使用 EVM/Solana 提供者配置 SDK。使用此功能需要它们。此外,建议提供您的私有 RPC URL,因为默认使用公共 RPC,对于多个请求(例如一次获取多个代币的余额),它们可能会对您进行速率限制。 阅读更多 配置 SDK 提供者

getTokenBalance

返回钱包持有的特定代币的余额。 参数
  • client (SDKClient): SDK 客户端实例。
  • walletAddress (string): 钱包地址。
  • token (Token): 一个 Token 对象。
返回值 一个 Promise,解析为 TokenAmountnull
Example

getTokenBalances

返回钱包持有的一组代币的余额。 参数
  • client (SDKClient): SDK 客户端实例。
  • walletAddress (string): 钱包地址。
  • tokens (Token[]): 一组 Token 对象。
返回值 一个 Promise,解析为 TokenAmount 对象的列表。
Example

getTokenBalancesByChain

查询给定钱包在特定链列表上的代币余额。 参数
  • client (SDKClient): SDK 客户端实例。
  • walletAddress (string): 钱包地址。
  • tokensByChain ([chainId: number]: Token[]): 按链 ID 组织的 Token 对象列表。
返回值 一个 Promise,解析为一个包含不同链上代币及其金额的对象。
Example

getWalletBalances

使用 LI.FI API 返回钱包在 EVM 链上持有的代币余额。 参数
  • client (SDKClient): SDK 客户端实例。
  • walletAddress (string): 钱包地址。
  • options (RequestOptions, 可选): 其他请求选项。
返回值 一个 Promise,解析为 Record<number, WalletTokenExtended[]> —— 按链 ID 组织的代币余额。
Example

管理代币授权额度

代币授权额度和批准功能特定于 EVM(以太坊虚拟机)链。它允许智能合约通过批准合约可以从用户钱包中花费的一定数量的代币来与 ERC-20 代币交互。 请确保您使用 EVM 提供者配置 SDK。使用此功能需要它。 阅读更多 配置 SDK 提供者
代币授权额度函数从 @lifi/sdk-provider-ethereum 包导出。请确保从正确的包安装和导入。

getTokenAllowance

获取特定代币的当前授权额度。 参数
  • client (SDKClient): SDK 客户端实例。
  • token (BaseToken): 要检查授权额度的代币。
  • ownerAddress (string): 代币的所有者。
  • spenderAddress (string): 已批准的花费者地址。
返回值 一个 Promise,解析为表示授权额度的 bigint,如果代币是原生代币则为 undefined。
Example

getTokenAllowanceMulticall

获取一组代币/花费者地址对的当前授权额度。 参数
  • client (SDKClient): SDK 客户端实例。
  • ownerAddress (string): 代币的所有者。
  • tokens (TokenSpender[]): 一组代币和花费者地址对。
返回值 一个 Promise,解析为 TokenAllowance 对象数组。
Example

setTokenAllowance

为特定代币和花费者地址设置代币授权额度。 参数
  • client (SDKClient): SDK 客户端实例。
  • request (ApproveTokenRequest): 批准请求。
    • walletClient (Client): 用于发送交易的 Viem 客户端。
    • token (BaseToken): 要设置授权额度的代币。
    • spenderAddress (string): 花费者的地址。
    • amount (bigint): 要批准的代币金额。
返回值 一个 Promise,解析为表示交易哈希的 Hash,如果不需要交易(例如,对于原生代币)则为 void
Example

revokeTokenApproval

撤销特定代币和花费者地址的代币批准。 参数
  • client (SDKClient): SDK 客户端实例。
  • request (RevokeApprovalRequest): 撤销请求。
    • walletClient (Client): 用于发送交易的 Viem 客户端。
    • token (BaseToken): 要撤销授权额度的代币。
    • spenderAddress (string): 花费者的地址。
返回值 一个 Promise,解析为表示交易哈希的 Hash,如果不需要交易(例如,对于原生代币)则为 void
Example