zhangruiyu / tencent_cos

Apache License 2.0
22 stars 10 forks source link

签名算法的类型问题 #9

Open Guo-Zhang opened 2 years ago

Guo-Zhang commented 2 years ago

我重新造了一遍这个库,发现了你的文章的评论区提到的签名问题可能的原因。

源码:https://github.com/quanttide/flutter-qcloud-cos/blob/master/lib/src/api/sign.dart

Dart的Uri的queryParamters的类型是Map<String, dynamic>?,http库的headers的类型是Map<String, String>?

步骤4对value的处理应该是这样

Uri.encodeComponent((value!=null)?value.toString():"")

我在主函数的入口增加了

queryParams = queryParams ?? {};
headers = headers ?? {};

Btw, 我在README和模块的头部注明了Inspired by your project. 非常感谢你开源代码,对我的开发有很大的帮助!

zhangruiyu commented 2 years ago

好的,我这边也会找时间同步这个问题