Go 调用示例
Golang 调用 CatFee.IO Rest API 示例
Last updated
Was this helpful?
Golang 调用 CatFee.IO Rest API 示例
Last updated
Was this helpful?
。
请确保您的 Go 环境已经安装了 net/http
和 crypto/hmac
等标准库。
generateTimestamp()
:
使用 time.Now().UTC().Format("2006-01-02T15:04:05.000Z")
获取当前 UTC 时间,并格式化为 ISO 8601 时间戳。
buildRequestPath()
:
该函数将传入的查询参数(queryParams
)构建成 URL 查询字符串。每个查询参数用 &
连接,最后返回完整的请求路径。
generateSignature()
:
通过 timestamp
、method
和 requestPath
拼接生成签名字符串,然后使用 HMAC-SHA256 算法进行签名,并将结果进行 Base64 编码。最终返回签名。
createRequest()
:
创建一个 HTTP 请求,使用 http.NewRequest()
创建请求对象,并通过 req.Header.Add()
添加必要的请求头,包括 CF-ACCESS-KEY
、CF-ACCESS-SIGN
和 CF-ACCESS-TIMESTAMP
。然后,发送请求并返回响应。
main()
:
在 main()
函数中,设置请求方法为 POST
,并传入需要的查询参数。调用 generateTimestamp()
、buildRequestPath()
和 generateSignature()
来生成请求头信息。最后,使用 createRequest()
发送请求并打印响应内容。
API Key 和 Secret:
请确保将 APIKey
和 APISecret
替换为您从 CatFee.IO 获取的实际值。
查询参数的顺序: 本示例中,我们直接将查询参数拼接到请求路径中,并没有排序查询参数。如果需要对查询参数排序,请使用适当的排序方法。
响应处理:
响应通过 ioutil.ReadAll()
读取并打印。如果响应体为 JSON 格式,您可以使用 encoding/json
库来解析 JSON 数据。
请求方法:
当前示例支持 POST
、GET
、PUT
和 DELETE
方法,您可以根据实际需求修改请求方法。
这个示例展示了如何在 Go 中使用 CatFee.IO Rest API,通过 HMAC-SHA256 签名验证来确保请求的安全性。您可以根据实际需求修改代码,支持不同的 HTTP 方法(GET
、POST
、PUT
、DELETE
),并处理不同的 API 响应。