> ## Documentation Index
> Fetch the complete documentation index at: https://www.helius.dev/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# 如何获取Solana账户数据

> 使用标准RPC方法读取Solana账户状态——getAccountInfo、getMultipleAccounts、getProgramAccounts和getBalance。

## 什么是账户数据？

Solana上的每个状态都存在于一个账户中——钱包、代币账户和程序（智能合约）状态。账户方法通过地址直接读取这些状态：原始或解析数据、所属程序、lamport（SOL）余额和租赁元数据。

对于更高级的代币和NFT数据，请使用[代币和NFT](/zh/das-api) API，而不是直接读取账户。对于交易历史，请参见[交易](/zh/rpc/historical-data)。

## 我应该使用哪种方法？

| 您需要什么              | 使用这个                      |
| ------------------ | ------------------------- |
| 一个账户的全部内容          | **`getAccountInfo`**      |
| 单个请求中的多个账户（最多100个） | **`getMultipleAccounts`** |
| 每个由某程序拥有的账户，带有过滤器  | **`getProgramAccounts`**  |
| 仅账户的SOL余额          | **`getBalance`**          |

## 关键方法

<CardGroup cols={2}>
  <Card title="getAccountInfo" icon="circle-info" href="/zh/rpc/guides/getaccountinfo">
    单一地址的完整账户状态——数据、拥有者、lamports和租赁周期。
  </Card>

  <Card title="getMultipleAccounts" icon="layer-group" href="/zh/rpc/guides/getmultipleaccounts">
    在一次调用中获取最多100个账户——高效读取多个账户的方式。
  </Card>

  <Card title="getProgramAccounts" icon="diagram-project" href="/zh/rpc/guides/getprogramaccounts">
    每个由程序拥有的账户，使用`memcmp`和`dataSize`过滤器进行目标查询。
  </Card>

  <Card title="getBalance" icon="scale-balanced" href="/zh/rpc/guides/getbalance">
    单个账户的lamport（SOL）余额。
  </Card>
</CardGroup>

## 快速入门

使用`getAccountInfo`读取一个账户。每个Solana RPC调用都使用您从[dashboard.helius.dev](https://dashboard.helius.dev)获取的API密钥在同一个端点进行。

<CodeGroup>
  ```typescript TypeScript theme={"system"}
  const response = await fetch(`https://mainnet.helius-rpc.com/?api-key=YOUR_API_KEY`, {
    method: 'POST',
    headers: { 'Content-Type': 'application/json' },
    body: JSON.stringify({
      jsonrpc: '2.0',
      id: '1',
      method: 'getAccountInfo',
      params: ['86xCnPeV69n6t3DnyGvkKobf9FdN2H9oiVDdaMpo2MMY', { encoding: 'jsonParsed' }],
    }),
  });

  const { result } = await response.json();
  console.log(result.value);
  ```

  ```python Python theme={"system"}
  import requests

  url = "https://mainnet.helius-rpc.com/?api-key=YOUR_API_KEY"
  payload = {
      "jsonrpc": "2.0",
      "id": "1",
      "method": "getAccountInfo",
      "params": ["86xCnPeV69n6t3DnyGvkKobf9FdN2H9oiVDdaMpo2MMY", {"encoding": "jsonParsed"}],
  }
  print(requests.post(url, json=payload).json()["result"]["value"])
  ```

  ```bash cURL theme={"system"}
  curl https://mainnet.helius-rpc.com/?api-key=YOUR_API_KEY \
    -X POST \
    -H "Content-Type: application/json" \
    -d '{
      "jsonrpc": "2.0",
      "id": "1",
      "method": "getAccountInfo",
      "params": ["86xCnPeV69n6t3DnyGvkKobf9FdN2H9oiVDdaMpo2MMY", { "encoding": "jsonParsed" }]
    }'
  ```
</CodeGroup>

读取多个账户？使用 `getMultipleAccounts` 并传入一个地址数组，而不是循环使用 `getAccountInfo` ——一个请求可返回最多 100 个账户。

## 下一步

<CardGroup cols={2}>
  <Card title="getAccountInfo 参考" icon="code" href="/zh/api-reference/rpc/http/getaccountinfo">
    完整的参数、编码和响应模式。
  </Card>

  <Card title="代币和NFT" icon="coins" href="/zh/das-api">
    对于代币余额和NFT数据，DAS API 比原始账户读取更高级。
  </Card>

  <Card title="交易" icon="clock-rotate-left" href="/zh/rpc/historical-data">
    查询地址的交易和转账历史。
  </Card>

  <Card title="所有 RPC 方法" icon="server" href="/zh/rpc/guides/overview">
    浏览完整的 Solana RPC 方法参考。
  </Card>
</CardGroup>
