开发者社区> 问答> 正文

请问iOS上传图片怎样设置图片路径?急!!!跪谢!!!

通过iOS的SDK上传图片时把key设置为路径的格式,如@“
/2015/06/09/0”会报错:
"The request signature we calculated does not match the signature you provided. Check your key and signing method."


应该是我的签名写的不匹配,请问我应该怎么样设置签名?现在初始化代码是这样的:
id<ALBBOSSServiceProtocol> ossService = [ALBBOSSServiceProvider getService];
    
    NSString *accessKey = @"xxx"; // 实际使用中,AK/SK不应明文保存在代码中
    NSString *secretKey = @"xxx"
    [ossService setGenerateToken:^(NSString *method, NSString *md5, NSString *type, NSString *date, NSString *xoss, NSString *resource) {
        NSString *signature = nil;
        NSString *content = [NSString stringWithFormat:@"%@\n%@\n%@\n%@\n%@%@", method, md5, type, date, xoss, resource];
        signature = [OSSTool calBase64Sha1WithData:content withKey:secretKey];
        signature = [NSString stringWithFormat:@"OSS %@:%@", accessKey, signature];
        NSLog(@"signature:%@", signature);
        return signature;
    }];
    [ossService setGlobalDefaultBucketAcl:PRIVATE];
    [ossService setGlobalDefaultBucketHostId:@"oss-cn-beijing.aliyuncs.com"];
    
    OSSBucket *ossBucket = [ossService getBucket:@"baobanimg"];
    [ossBucket setAcl:PUBLIC_READ]; // 指明该Bucket的访问权限
    [ossBucket setOssHostId:@"oss-cn-beijing.aliyuncs.com"]; // 指明该Bucket所在数据中心的域名或已经绑定Bucket的Cname域名

    [ossBucket setGenerateToken:nil]; // 指明该Bucket访问时应该采用的加签方法,若不指明则从OSSClient的全局默认设置继承;如果Bucket访问权限为Public,那么可以为null

展开
收起
scott_haha 2015-06-09 17:52:58 10812 0
3 条回答
写回答
取消 提交回答
  • Re请问iOS上传图片怎样设置图片路径?急!!!跪谢!!!
    楼主你是怎么解决的,完全看不懂demo
    2015-06-15 16:00:23
    赞同 展开评论 打赏
  • Re请问iOS上传图片怎样设置图片路径?急!!!跪谢!!!
    这个问题已在:
    http://bbs.aliyun.com/read/248067.html?spm=5176.7189909.0.0.YF3GMd
    中回复,如果还未能解决,建议提交工单。
    2015-06-11 15:20:04
    赞同 展开评论 打赏
  • 旺旺:nectar2。
    楼主您好,

    欢迎来到阿里云论坛。

    为了方便您及时收到帮助信息,将为您的帖子转移到“开放存储服务OSS”版块喔。
    2015-06-09 20:25:03
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
手淘iOS性能优化探索 立即下载
From Java/Android to Swift iOS 立即下载
深入剖析iOS性能优化 立即下载