upyun / ios-sdk

UPYUN iOS SDK
Other
32 stars 10 forks source link

ios集成时的坑 #13

Closed TeacherXue closed 7 years ago

TeacherXue commented 7 years ago

生成signature时一定要用demo中所用的+ (NSString *)getSignatureWithPassword:(NSString *)password parameters:(NSArray *)parameter 方法来生成加密的signature 一定一定不要自己按照文档去加密 ,血的教训。。。如果是用swift的alamofire框架block返回值时用response来接受 不要用responseJson之类的 。。。血的教训。。

linKnowEasy commented 7 years ago

感谢反馈。 方便详细说明一下坑的位置么? 我们会在坑前面插上路标(此处有坑)

TeacherXue commented 7 years ago

就是官方文档在生成signature时候有些问题 如果按照文档生成的 总是错的 必须要用demo中的生成方法 (我们和安卓都测试过了)感觉demo是在最后一步base64加密时候做了一些处理

linKnowEasy commented 7 years ago

+ (NSString *)getSignatureWithPassword:(NSString *)password parameters:(NSArray *)parameter 这个方法是可以看到内部实现. 最后一步 base64 是调用系统的方法 NSData *hashData = [HMAC base64EncodedDataWithOptions:0];, 没有做额外的处理。 方便贴一下生成 signature 的代码么?? 或者加 QQ 517570175 讨论

TeacherXue commented 7 years ago

额。。。QQ验证问题是什么

linKnowEasy commented 7 years ago

不好意思。随便写就行了。过滤广告用的

linKnowEasy commented 7 years ago

注意点1. HMAC-SHA1 输出的必须是原生的二进制数据, 然后直接对二进制数据进行 Base 64. 可以参考 base 64工具 的结果B