# @ankr\.com/ankr\.js 中文文档

规范地址：https://npmcn.com/package/%40ankr.com/ankr.js/

版本：0\.7\.0
npm 元数据更新时间：2026-08-26T16:58:52.733Z
中文译文更新时间：2026-11-06T12:12:38.189Z
软件包许可：MIT

本文由上游 README 翻译，可能存在偏差，请结合原文核对 API、命令与配置。版权与许可归原作者所有。

原始 npm 页面：https://www.npmjs.com/package/%40ankr.com/ankr.js
原文对照：https://npmcn.com/package/%40ankr.com/ankr.js/?lang=original
项目主页：https://github.com/w3tech/ankr.js#readme
源码仓库：https://github.com/w3tech/ankr.js

## 关键信息（来自 npm 元数据）

- 包体积（解压后）：41.5 kB，12 个文件
- 模块格式：CommonJS
- TypeScript 类型：包内自带
- 运行依赖：1 个
- 首次发布：2022-05-12T10:31:04.771Z
- 最新版本发布：2026-08-26T16:58:52.345Z
- 近 30 天下载量：3255（2026-10-06 至 2026-11-04，npm 官方下载统计）
- 已发布版本数：24（近 12 个月 1 个）

## 中文简介

与 Ankr APIs 交互的压缩库 .

## 安装

```sh
npm install @ankr.com/ankr.js
```

也可以使用：`pnpm add @ankr.com/ankr.js`、`yarn add @ankr.com/ankr.js`、`bun add @ankr.com/ankr.js`

## README

# 国 家

与 Ankr 交互的压缩 JavaScript 库 [高级 API](https://www.ankr.com/advanced-api/)。 。 。 .

## 两分钟后开始

#### 1\. 从npm安装软件包

```bash
# with npm
npm install @ankr.com/ankr.js

# with yarn
yarn add @ankr.com/ankr.js
```

#### 2\. 初始化提供者

_注:要从2023年5月29日起免费使用高级API,您必须在平台注册._

把你的个人终点拿来 [https://www.ankr.com/rpc/advanced-api (中文(简体) )](https://www.ankr.com/rpc/advanced-api) 并提供给 `AnkrProvider` 建筑师.

```javascript
import { AnkrProvider } from '@ankr.com/ankr.js';

const provider = new AnkrProvider('YOUR_ENDPOINT');
```

#### 3\. 使用提供者并调用所支持的方法之一

```javascript
await provider.getNFTsByOwner({
  blockchain: 'eth',
  walletAddress: '0x0E11A192d574b342C51be9e306694C41547185DD',
});
```

## 支持链

`ankr.js` 此时支持以下链:

主要网

-   以利亚: `"eth"`
-   BNB 智能链 : `"bsc"`
-   多边形 : `"polygon"`
-   方汤: `"fantom"`
-   坐标 : `"arbitrum"`
-   雪崩: `"avalanche"`
-   赛斯克林NEVM: `"syscoin"`
-   乐观: `"optimism"`
-   多边形 zkEVM : `"polygon_zkevm"`
-   罗勒: `"rollux"`
-   基础 : `"base"`
-   火焰 : `"flare"`
-   肠道链 : `"gnosis"`
-   滚动 : `"scroll"`
-   斯特拉尔: `"stellar"`
-   线性: `"linea"`
-   谢曰: `"xai"`
-   泰罗士: `"telos"`
-   显示器 : `"xlayer"`

测试网

-   伊特鲁姆·塞波利亚: `"eth_sepolia"`
-   伊特鲁姆·霍尔斯基: `"eth_holesky"`
-   雪崩富士: `"avalanche_fuji"`
-   多边形 : `"polygon_amoy"`
-   乐观主义 Sepolia: `"optimism_sepolia"`
-   塞波利亚基地: `"base_sepolia"`
-   故事艾奈德测试网: `"story_aeneid_testnet"`

Appchain 测试网

-   内乌拉·德夫网 `"neura_devnet"`
-   新浦测试网 `"neura_testnet_v1"`
-   激励Devnet `"incentiv_devnet_v3"`
-   激励测试网 `"incentiv_testnet"`

## 可用方法

`ankr.js` 支持下列方法:

早期访问

-   [`getTokenPriceHistory`](https://npmcn.com/package/%40ankr.com/ankr.js/#readme-gettokenpricehistory)

调试 API

-   [`explainTokenPrice`](https://npmcn.com/package/%40ankr.com/ankr.js/#readme-explaintokenprice)
-   [`getAccountBalance`](https://npmcn.com/package/%40ankr.com/ankr.js/#readme-getaccountbalance)
-   [`getCurrencies`](https://npmcn.com/package/%40ankr.com/ankr.js/#readme-getcurrencies)
-   [`getTokenHolders`](https://npmcn.com/package/%40ankr.com/ankr.js/#readme-gettokenholders)
-   [`getTokenHoldersCount`](https://npmcn.com/package/%40ankr.com/ankr.js/#readme-gettokenholderscount)
-   [`getTokenPrice`](https://npmcn.com/package/%40ankr.com/ankr.js/#readme-gettokenprice)
-   [`getTokenTransfers`](https://npmcn.com/package/%40ankr.com/ankr.js/#readme-gettokentransfers)

NFT API (英语)

-   [`getNFTsByOwner`](https://npmcn.com/package/%40ankr.com/ankr.js/#readme-getnftsbyowner)
-   [`getNFTMetadata`](https://npmcn.com/package/%40ankr.com/ankr.js/#readme-getnftmetadata)
-   [`getNFTHolders`](https://npmcn.com/package/%40ankr.com/ankr.js/#readme-getnftholders)
-   [`getNftTransfers`](https://npmcn.com/package/%40ankr.com/ankr.js/#readme-getnfttransfers)

查询 API

-   [`getLogs`](https://npmcn.com/package/%40ankr.com/ankr.js/#readme-getlogs)
-   [`getBlocks`](https://npmcn.com/package/%40ankr.com/ankr.js/#readme-getblocks)
-   [`getTransactionsByHash`](https://npmcn.com/package/%40ankr.com/ankr.js/#readme-gettransactionsbyhash)
-   [`getTransactionsByAddress`](https://npmcn.com/package/%40ankr.com/ankr.js/#readme-gettransactionsbyaddress)
-   [`getBlockchainStats`](https://npmcn.com/package/%40ankr.com/ankr.js/#readme-getblockchainstats)
-   [`getInteractions`](https://npmcn.com/package/%40ankr.com/ankr.js/#readme-getinteractions)

* * *

## 使用量

#### `getLogs`

获取匹配过滤器的日志 .

```javascript
const logs = async () => {
  return await provider.getLogs({
    blockchain: 'eth',
    fromBlock: 1181739,
    toBlock: 1181739,
    topics: [
      [],
      ['0x000000000000000000000000feb92d30bf01ff9a1901666c5573532bfa07eeec'],
    ],
    address: '0x3589d05a1ec4af9f65b0e5554e645707775ee43c',
    decodeLogs: false,
  });
};
```

#### `getBlocks`

查询指定范围内的块数据.

```javascript
const blocks = async () => {
  return await provider.getBlocks({
    blockchain: 'bsc',
    fromBlock: 100,
    toBlock: 200,
  });
};
```

#### `getTransactionsByHash`

通过交易散列查询交易数据 .

```javascript
const transactions = async () => {
  return await provider.getTransactionsByHash({
    transactionHash:
      '0x82c13aaac6f0b6471afb94a3a64ae89d45baa3608ad397621dbb0d847f51196f',
    decodeTxData: true,
  });
};
```

#### `getTransactionsByAddress`

查询指定地址的交易数据.

```javascript
const transactions = async () => {
  return await provider.getTransactionsByAddress({
      blockchain: 'bsc',
      fromBlock: 23593283,
      toBlock: 23593283,
      address: ['0x97242e3315c7ece760dc7f83a7dd8af6659f8c4c'],
      pageToken: '',
      pageSize: 10,
      descOrder: true,
      includeLogs: true,
  });
};
```

#### `getAccountBalance`

拿到钱包的硬币和纪念币余额.

```javascript
const balances = async () => {
  return await provider.getAccountBalance({
    blockchain: 'eth',
    walletAddress: '0xfa9019df60d3c710d7d583b2d69e18d412257617',
  });
};
```

#### `getNFTsByOwner`

获取钱包拥有的所有 NFT( 收集) 的数据 .

```javascript
const nfts = async () => {
  return await provider.getNFTsByOwner({
    blockchain: 'eth',
    walletAddress: '0x0E11A192d574b342C51be9e306694C41547185DD',
    filter: [
      { '0x700b4b9f39bb1faf5d0d16a20488f2733550bff4': [] },
      { '0xd8682bfa6918b0174f287b888e765b9a1b4dc9c3': ['8937'] },
    ],
  });
};
```

#### `getNFTMetadata`

获取NFT的合同元数据.

```javascript
const nftsMetadata = async () => {
  return await provider.getNFTMetadata({
      blockchain: 'avalanche', 
      contractAddress: '0x8d01c8ee82e581e55c02117a676b5bbd4734fabb', 
      tokenId: '23240',
      forceFetch: false
  });
};
```

#### `getNFTHolders`

得到NFT的控股.

```javascript
const nftsHolders = async () => {
  return await provider.getNFTHolders({
      blockchain: 'arbitrum',
      contractAddress: '0xc36442b4a4522e871399cd717abdd847ab11fe88',
      pageSize: 1000,
      pageToken: '',
  });
};
```

#### `getNftTransfers`

获取 NFT 转让指定地址.

```javascript
const nftTransfers = async () => {
  return await provider.getNftTransfers({
      blockchain: ['eth', 'bsc'],
      address: ['0xd8da6bf26964af9d7eed9e03e53415d37aa96045'],
      fromTimestamp: 1672563107,
      toTimestamp: 1672563107,
  });
};
```

#### `getTokenHolders`

获取特定合同地址的签名持有人名单.

```javascript
const tokenHolders = async () => {
  return await provider.getTokenHolders({
    blockchain: 'eth',
    contractAddress: '0xdac17f958d2ee523a2206206994597c13d831ec7',
  });
};
```

#### `getTokenHoldersCount`

获取特定合同地址的令牌持有者的当前和历史数据.

```javascript
const tokenHoldersCount = async () => {
  return await provider.getTokenHoldersCount({
    blockchain: 'eth',
    contractAddress: '0xdac17f958d2ee523a2206206994597c13d831ec7',
  });
};
```

#### `getCurrencies`

获取特定区块链的支持货币列表 .

```javascript
const currencies = async () => {
  return await provider.getCurrencies({ blockchain: 'fantom' });
};
```

#### `getTokenPriceHistory`

获得给定合同价格的历史列表到给定时间戳.

```javascript
const tokenPriceHistory = async () => {
  return await provider.getTokenPriceHistory({ 
      blockchain: 'eth',
      contractAddress: '0x50327c6c5a14dcade707abad2e27eb517df87ab5',
      toTimestamp: 1696970653,
      interval: 100,
      limit: 10,
  });
};
```

#### `explainTokenPrice`

获取一个令牌和集合列表,解释如何计算出价格.

```javascript
const tokenPriceExplanation = async () => {
  return await provider.explainTokenPrice({ 
      blockchain: 'eth',
      tokenAddress: '0x8290333cef9e6d528dd5618fb97a76f268f3edd4',
      blockHeight: 17463534,
  });
};
```

#### `getTokenPrice`

通过合同获得象征性价格.

```javascript
const tokenPrice = async () => {
  return await provider.getTokenPrice({ 
      blockchain: 'eth',
      contractAddress: '',
  });
};
```

#### `getTokenTransfers`

获取指定地址的令牌传输 .

```javascript
const tokenTransfers = async () => {
  return await provider.getTokenTransfers({ 
      blockchain: 'eth',
      address: ['0xf16e9b0d03470827a95cdfd0cb8a8a3b46969b91'],
      fromTimestamp: 1674441035,
      toTimestamp: 1674441035,
      pageSize: 1,
      descOrder: true
  });
};
```

#### `getBlockchainStats`

返回块链统计(txs等数字) .

```javascript
const blockchainStats = async () => {
  return await provider.getBlockchainStats({});
};
```

#### `getInteractions`

链式地址相互作用的返回 .

```javascript
const interactions = async () => {
  return await provider.getInteractions({
      address: '0xF977814e90dA44bFA03b6295A0616a897441aceC',
  });
};
```

### 关于 API 密钥

Ankr提议 _免费_ 访问高级API,但您必须在Ankr平台注册才能访问. 把你的个人终点拿来 [https://www.ankr.com/rpc/advanced-api (中文(简体) )](https://www.ankr.com/rpc/advanced-api)。 。 。 .

## 常见问题

### @ankr\.com/ankr\.js 是什么？

与 Ankr APIs 交互的压缩库 \.

### 如何安装 @ankr\.com/ankr\.js？

在项目目录运行 npm install @ankr\.com/ankr\.js，或使用 pnpm add / yarn add / bun add。

### @ankr\.com/ankr\.js 支持 TypeScript 吗？

支持。包内自带 TypeScript 类型声明（package\.json 声明了 types 入口），安装后即可获得类型提示，无需再安装 @types 包。

### @ankr\.com/ankr\.js 支持 ESM 还是 CommonJS？

以 CommonJS 形式发布，可以直接 require\(\)；在 ES Module 项目中也可以用 import 引入（Node\.js 会把 module\.exports 作为默认导出）。

### @ankr\.com/ankr\.js 可以商用吗？

@ankr\.com/ankr\.js 使用 MIT 许可。宽松许可：允许商业使用、修改和再分发，通常只需在分发时保留原版权与许可声明。以上为概括，不构成法律意见，请以许可原文为准。

### @ankr\.com/ankr\.js 的下载量有多少？

根据 npm 官方下载统计，@ankr\.com/ankr\.js 在 2026/10/06 – 2026/11/04 这 30 天内被下载 3,255 次，日均约 109 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入，适合横向比较热度，不能直接等同于使用人数。

### @ankr\.com/ankr\.js 还在维护吗？

最新版本 0\.7\.0 发布于 2026/08/27（2 个月前）；至今共发布 24 个版本，其中过去 12 个月发布了 1 个；首次发布于 2022/05/12。发布频率只是参考信号：功能稳定的工具可能很少需要更新，建议结合源码仓库的 issue 和提交记录判断。

