type
status
date
slug
summary
tags
category
icon
password
前言
在做网盘毕设对接阿里云盘部分时,发现上传和下载操作需要传递
x-deivce-id和x-signature两个header,而获取token的接口并没有返回这两个参数,上网查询资料后发现需要本地进行签名操作。用到的接口
通过refreshToken拿到临时token:
https://auth.aliyundrive.com/v2/account/token参数:
grant_type refresh_token创建和激活会话:
https://api.aliyundrive.com/users/v1/users/device/create_session参数:
pubKey deviceName modelName签名过程
- 生成密钥对
- 生成随机私钥
- 用私钥生成公钥
- 拼接字符串
appId:deviceId:userId:nonceappId和nonce可以固定deviceId为随机UUIDuserId通过拿token的接口可获取到
- 对字符串进行签名
- 对拼接好的字符串进行 sha256 编码,再进行签名
- 签名算法:ecc-secp256k1
传递参数
grant_type为验证方式,输入refreshToken即可
refresh_token获取方式
pubKey为公钥签名加 04
deviceName和modelName为自己取的名,示例图:

x-device-id为上面随机生成的deviceId
x-signature为签名后面加 01
代码实现
参考:
- 作者:Kougami
- 链接:https://tangly1024.com/article/1519abad-2f1c-800d-8d65-d95c6bfa80f3
- 声明:本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。