Node.js 调用示例
Node.js 调用 CatFee.IO Rest API 示例
前提条件
您需要一个有效的 API Key 和 API Secret。
请确保您的 Node.js 环境已安装
axios
库。可以通过npm install axios
安装。
示例代码
代码解析
generateTimestamp()
: 返回当前 UTC 时间戳,使用 JavaScript 的toISOString()
方法生成 ISO 8601 格式的时间戳。buildRequestPath()
: 该函数根据传入的查询参数(queryParams
)构建完整的 URL 路径。URLSearchParams
类用于将查询参数转为 URL 编码的查询字符串。generateSignature()
: 该函数使用HMAC-SHA256
算法对timestamp
、method
和requestPath
拼接后的字符串进行签名,使用 API Secret 作为密钥。通过crypto
模块生成签名,并返回 Base64 编码的签名。createRequest()
: 使用axios
库发送 HTTP 请求。根据不同的请求方法(GET
、POST
、PUT
、DELETE
)构建请求,并设置请求头,包括CF-ACCESS-KEY
、CF-ACCESS-SIGN
和CF-ACCESS-TIMESTAMP
。main()
: 在main()
函数中,设置请求方法为POST
,并构建查询参数。生成时间戳、签名和请求路径后,调用createRequest()
函数发送请求并打印响应。
注意事项
API Key 和 Secret: 请确保将
API_KEY
和API_SECRET
替换为您从 CatFee.IO 获取的实际值。查询参数的顺序: 在此示例中,我们直接通过
URLSearchParams
创建查询字符串,不对查询参数进行排序。错误处理: 使用
try-catch
捕获并打印可能出现的异常。通过error.response
可以获取服务器的错误响应。请求方法: 当前示例支持
POST
、GET
、PUT
和DELETE
方法,您可以根据实际需求修改请求方法。响应处理: 如果请求成功,
axios
会返回response.data
,即响应体数据,您可以根据实际情况进一步解析响应数据(如 JSON 格式)。
总结
此示例展示了如何在 Node.js 中使用 CatFee.IO Rest API,确保请求的安全性,并通过 HMAC-SHA256 签名验证请求。您可以根据需求调整代码,支持不同的 HTTP 方法(GET
、POST
、PUT
、DELETE
)。
Last updated
Was this helpful?