跳转到内容

快速入门指南

本指南帮助你迈出使用 Chaingateway 的第一步。它介绍了如何阅读 API 文档、创建 API key,并获得使用我们 API 的授权。

Chaingateway API 为开发者提供了一个简单的接口,用于与 Tron、Binance Smart Chain(BNB Chain)、Ethereum、Polygon 和 Bitcoin 等多条区块链交互。我们的 API 端点为你提供多种功能,例如创建交易、发送同质化和非同质化代币,以及查询有用的区块链数据,如账户余额和区块高度。

Chaingateway API 为开发者提供了一个简单的接口,用于与 Tron、Binance Smart Chain(BNB Chain)、Ethereum、Polygon 和 Bitcoin 等多条区块链交互。我们的 API 端点提供多种功能,例如创建交易、发送同质化和非同质化代币,以及查询有用的区块链数据,如账户余额和区块高度。

  • 如何设置你的账户
  • 如何创建你的 API key
  • 我们 API 背后的基本概念
  • 如何发送你的第一个 API 请求

首先,创建一个 Chaingateway 账户,或 登录。然后前往 API key 页面 创建一个新令牌。为你的令牌输入一个名称,并点击”+ Create Token”。你的新令牌现在应该会显示在界面中。请将其保存在安全的地方,不要将该令牌提供给他人!

在接下来的章节中,你可以在 curl、PHP、Node.js 和 Python 之间选择你的编程语言。如果你需要其他语言的代码示例,我们的 API 参考文档 支持许多其他语言。

我们建议为你的 API key 使用集中存储的方式,对于 curl 和 Python 可以是 环境变量,对于 Node.jsPHP/Laravel 可以是 .env 文件。

Chaingateway 的 REST API 遵循 REST 原则,使用 HTTP 请求进行通信。它提供代表资源的端点,例如 /addresses,并支持 GET、POST、PUT、DELETE 等标准方法,用于获取、创建、更新和删除资源等操作。响应通常为 JSON 格式。身份验证确保对资源的安全访问。

我们以 address 资源为例:

  • GET:通过向 /addresses 发送 GET 请求获取地址列表数据,或向 /addresses/{id} 发送 GET 请求获取特定地址的数据。

  • POST:通过向 /addresses 发送 POST 请求并在请求体中包含地址详情来创建新地址。

  • PUT:通过向 /addresses/{id} 发送 PUT 请求,并在请求体中包含完整的更新后地址信息来更新现有地址。由于区块链上不允许更新任何地址信息,因此该方法不存在。

  • DELETE:通过向 /addresses/{id} 发送 DELETE 请求来移除地址。

  • PATCH:通过向 /addresses/{id} 发送 PATCH 请求,仅包含特定的更改内容,对地址进行部分更新。由于区块链上不允许更新任何地址信息,因此该方法不存在。

这些方法使客户端能够以可预测和一致的方式对各种资源执行 CRUD 操作,符合 REST 原则。你需要确保所用方法始终符合你所需的功能。

HTTP header 提供有关请求或响应的附加信息。以下是一些常用的 header:

  • Authorization Header:Authorization header 用于在请求中随附凭据(例如令牌或用户名/密码),以访问受保护的资源。例如,Authorization: <token> 表示该请求使用令牌进行了授权。

  • Accept Header:Accept header 指定客户端愿意在响应中接收的媒体类型。它帮助服务器了解客户端偏好的内容类型。例如,Accept: application/json 告诉服务器客户端偏好 JSON 格式的响应。可以指定多个以逗号分隔的媒体类型,服务器将根据其能力和客户端表达的偏好选择最合适的一种。

  • Content-Type Header:Content-Type header 表示发送到服务器的请求体的媒体类型。它告诉服务器如何解析请求中的数据。例如,Content-Type: application/json 表示请求体的格式为 JSON。此 header 对于 POST 和 PUT 请求尤为重要,因为客户端会向服务器发送数据。

在配置好你的 HTTP 客户端并理解 API 的工作原理后,我们就可以在项目中开始使用它了。为了向你展示我们的 API 如何工作,我们将首先创建一个以太坊地址。

让我们拆解一下这个 API 调用的各个组成部分:

我们使用 POST 方法,因为我们想向 API 提交数据。

我们发送的数据在请求体 {"password": "architecto"} 中定义。这是一个包含键值对的 JSON 对象,键是”password”,值是”architecto”。服务器将根据 API 的规范处理这些数据。

Authorization Header 添加了一个值为”YOUR_SECRET_TOKEN”的 Authorization header(请将其替换为你自己的令牌!)。Content-TypeAccept 都设置为 application/json,确保两个系统都以 application/json 文件类型进行通信。

Terminal window
curl --request POST \
--url http://api.chaingateway.io/api/v2/ethereum/addresses \
--header 'Authorization: YOUR_SECRET_TOKEN' \
--header 'Content-Type: application/json' \
--data '{
"password": "architecto"
}'

响应将是:

{
"status": 201,
"ok": true,
"message": "Address created",
"data": {}
}

要获取数据,例如获取地址列表,你可以使用 GET 方法。此方法通常不使用任何请求体。

Terminal window
curl --request GET \
--url https://api.chaingateway.io/api/v2/ethereum/addresses \
--header 'Authorization: YOUR_SECRET_TOKEN'

响应将是:

{
"ok": true
}