1.
收集请求信息
包括 HTTP 方法(GET/POST)、请求路径、查询参数、Host,以及可选的自定义头。
2.
生成待签名字符串
把方法、路径、query、Host、头部信息按照规定格式拼接成字符串。这个字符串就是签名的原始数据。
3.
HMAC-SHA1 签名
使用 SecretKey 对待签名字符串做 HMAC-SHA1 加密,生成二进制签名。
4.
URL 安全 Base64 编码
将签名编码成 URL 安全的 Base64(把 + 替换成 -,/ 替换成 _),生成最终签名字符串。
5.
拼接 Access Token
将 AccessKey 和编码后的签名用冒号连接,形成 AccessKey:签名 格式的 Access Token。
1.
构造完整 URL
把请求路径和 query 参数拼接成完整的 URL。
2.
设置请求头
将生成的 Access Token 放入 Authorization 头,例如: Authorization: Qiniu <token>。
3.
发送 HTTP 请求
使用 Node.js 的 fetch 发送 GET 或 POST 请求,并传入必要的 headers。
4.
处理返回结果
返回 JSON 数据并打印,或者在请求失败时捕获错误并打印。