Open jiang6777 opened 5 years ago
今天下午一直报这个错误,不知道什么原因,用Demo也请求不了。 这是我的配置文件:
AppDelegate中的代码: id credentialProvider = [[OSSAuthCredentialProvider alloc] initWithAuthServerUrl:OSS_STSTOKEN_URL]; OSSClientConfiguration *cfg = [[OSSClientConfiguration alloc] init]; cfg.maxRetryCount = 3; cfg.timeoutIntervalForRequest = 15; cfg.isHttpdnsEnable = NO; cfg.crc64Verifiable = YES;
OSSClient *defaultClient = [[OSSClient alloc] initWithEndpoint:OSS_ENDPOINT credentialProvider:credentialProvider clientConfiguration:cfg]; [OSSManager sharedManager].defaultClient = defaultClient; OSSClient *defaultImgClient = [[OSSClient alloc] initWithEndpoint:OSS_IMG_ENDPOINT credentialProvider:credentialProvider clientConfiguration:cfg]; [OSSManager sharedManager].imageClient = defaultImgClient;
OSSWrapper.m中的代码: _normalUploadRequest = [OSSPutObjectRequest new]; _normalUploadRequest.bucketName = OSS_BUCKET_PRIVATE; _normalUploadRequest.objectKey = @"sample";//@"OBJ/";//objectKey; _normalUploadRequest.uploadingFileURL = [NSURL fileURLWithPath:filePath]; _normalUploadRequest.isAuthenticationRequired = YES; _normalUploadRequest.uploadProgress = ^(int64_t bytesSent, int64_t totalByteSent, int64_t totalBytesExpectedToSend) { float progress = 1.f totalByteSent / totalBytesExpectedToSend; OSSLogDebug(@"上传文件进度: %f", progress); }; _normalUploadRequest.callbackParam = @{ @"callbackUrl": OSS_CALLBACK_URL, // callbackBody可自定义传入的信息 @"callbackBody": @"filename=${object}" }; dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{ OSSTask task = [[OSSManager sharedManager].defaultClient putObject:_normalUploadRequest]; [task continueWithBlock:^id(OSSTask *task) { dispatch_async(dispatch_get_main_queue(), ^{ if (task.error) { failure(task.error); } else { success(nil); } });
return nil; }]; [task waitUntilFinished]; });
求原因
sts授权服务器的地址
这个错误是token未获取成功 请检测sts授权服务器的地址以及数据返回是否正确 请参考https://help.aliyun.com/document_detail/31920.html?spm=a2c4g.11186623.6.1346.40c552afYUHQqA
今天下午一直报这个错误,不知道什么原因,用Demo也请求不了。 这是我的配置文件:
define OSS_ACCESSKEY_ID @"LTAIYuewio25odEfz" // 子账号id
define OSS_SECRETKEY_ID @"SClF6UIQ1dmQ782d1nKov8CoGwIgpG" // 子账号secret
define OSS_BUCKET_PUBLIC @"log" // bucket名称
define OSS_BUCKET_PRIVATE @"log" // bucket名称
define OSS_ENDPOINT @"https://oss-cn-beijing.aliyuncs.com" // 访问的阿里云endpoint
define OSS_IMG_ENDPOINT @"https://oss-cn-beijing.aliyuncs.com" // 旧版本图片服务的endpoint
define OSS_MULTIPART_UPLOADKEY @"multipart_key" // 分片上传的object key
define OSS_RESUMABLE_UPLOADKEY @"resumable_key" // 断点续传的object key
define OSS_CALLBACK_URL @"http://oss-demo.aliyuncs.com:23450" // 对象上传成功时回调的业务服务器地址
define OSS_CNAME_URL @"http://www.cnametest.com/" // cname,用于替换bucket.endpoint的访问域名
define OSS_STSTOKEN_URL @"http://192.168.1.32:9999/queryOssToken" // sts授权服务器的地址
define OSS_IMAGE_KEY @"testImage.png" // 测试图片的名称
define OSS_DOWNLOAD_FILE_NAME @"OSS_DOWNLOAD_FILE_NAME" // 用于下载的object key
AppDelegate中的代码: id credentialProvider = [[OSSAuthCredentialProvider alloc] initWithAuthServerUrl:OSS_STSTOKEN_URL];
OSSClientConfiguration *cfg = [[OSSClientConfiguration alloc] init];
cfg.maxRetryCount = 3;
cfg.timeoutIntervalForRequest = 15;
cfg.isHttpdnsEnable = NO;
cfg.crc64Verifiable = YES;
OSSWrapper.m中的代码: _normalUploadRequest = [OSSPutObjectRequest new]; _normalUploadRequest.bucketName = OSS_BUCKET_PRIVATE; _normalUploadRequest.objectKey = @"sample";//@"OBJ/";//objectKey; _normalUploadRequest.uploadingFileURL = [NSURL fileURLWithPath:filePath]; _normalUploadRequest.isAuthenticationRequired = YES; _normalUploadRequest.uploadProgress = ^(int64_t bytesSent, int64_t totalByteSent, int64_t totalBytesExpectedToSend) { float progress = 1.f totalByteSent / totalBytesExpectedToSend; OSSLogDebug(@"上传文件进度: %f", progress); }; _normalUploadRequest.callbackParam = @{ @"callbackUrl": OSS_CALLBACK_URL, // callbackBody可自定义传入的信息 @"callbackBody": @"filename=${object}" }; dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{ OSSTask task = [[OSSManager sharedManager].defaultClient putObject:_normalUploadRequest]; [task continueWithBlock:^id(OSSTask *task) { dispatch_async(dispatch_get_main_queue(), ^{ if (task.error) { failure(task.error); } else { success(nil); } });
求原因