Skip to content

Commit 6c2049f

Browse files
author
karisli
committed
# 5.5.8
- fixbug(文件名带有?上传失败安全移除观察者)
1 parent 9f069dd commit 6c2049f

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

43 files changed

+523
-454
lines changed

CHANGELOG.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
1+
# 5.5.8
2+
- fixbug(文件名带有?上传失败安全移除观察者)
3+
14
# 5.5.7
25
-传输无法cancle的bug\ - 增加捞取log的功能
36

QCloudCOSXML.podspec

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
Pod::Spec.new do |s|
22
s.name = "QCloudCOSXML"
3-
s.version = "5.5.7"
3+
s.version = "5.5.8"
44
s.summary = "QCloudCOSXML 腾讯云iOS-SDK组件"
55

66
s.homepage = "https://cloud.tencent.com/"
@@ -9,12 +9,12 @@ s.version = "5.5.7"
99
s.source = { :git => "https://github.com/tencentyun/qcloud-sdk-ios.git", :tag => s.version.to_s }
1010
s.ios.deployment_target = '8.0'
1111
s.source_files = 'QCloudCOSXML/Classes/**/*'
12-
s.dependency "QCloudCore",'5.5.7'
12+
s.dependency "QCloudCore",'5.5.8'
1313
s.static_framework = true
1414

1515
s.subspec 'Transfer' do |sbt|
1616
sbt.source_files = 'QCloudCOSXML/Classes/*','QCloudCOSXML/Classes/Transfer/**/*','QCloudCOSXML/Classes/Base/*'
17-
sbt.dependency "QCloudCore",'5.5.7'
17+
sbt.dependency "QCloudCore",'5.5.8'
1818
# sbt.static_framework=true
1919
end
2020
end

QCloudCOSXML/Classes/Base/QCloudCOSXMLEndPoint.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@
2020
服务的基础名称, 默认值为: myqcloud.com
2121
*/
2222
@property (nonatomic, copy) QCloudServiceName serviceName;
23+
@property (nonatomic, copy) NSString *suffix;
2324
@end
2425

2526
#pragma clang diagnostic pop

QCloudCOSXML/Classes/Base/QCloudCOSXMLEndPoint.m

Lines changed: 55 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -29,10 +29,17 @@ - (NSString *)formattedBucket:(NSString*)bucket withAPPID:(NSString*)APPID {
2929
return bucket;
3030
}
3131
NSString* APPIDSubfix = [NSString stringWithFormat:@"-%@",APPID];
32-
NSString* subfixString = [bucket substringWithRange:NSMakeRange(bucket.length - subfixLength , subfixLength)];
33-
if ([subfixString isEqualToString:APPIDSubfix]) {
34-
return [bucket substringWithRange:NSMakeRange(0, bucket.length - subfixLength)];
32+
if (APPIDSubfix) {
33+
NSString* subfixString = [bucket substringWithRange:NSMakeRange(bucket.length - subfixLength , subfixLength)];
34+
if ([subfixString isEqualToString:APPIDSubfix]) {
35+
return [bucket substringWithRange:NSMakeRange(0, bucket.length - subfixLength)];
36+
}
37+
}else{
38+
if (!APPID) {
39+
@throw [NSException exceptionWithName:kQCloudNetworkDomain reason:[NSString stringWithFormat:@"您没有配置AppID就使用了服务%@", self.class] userInfo:nil];
40+
}
3541
}
42+
3643
//should not reach here
3744
return bucket;
3845
}
@@ -53,34 +60,58 @@ -(NSURL *)serverURLWithBucket:(NSString *)bucket appID:(NSString *)appID regionN
5360
QCloudLogDebug(@"bucket %@ contains illeagal character, building service url pregress returns immediately", bucket);
5461
return nil;
5562
}
56-
57-
NSString* formattedBucketName = [self formattedBucket:bucket withAPPID:appID]; ;
63+
NSString* formattedBucketName = [self formattedBucket:bucket withAPPID:appID];
64+
if (appID) {
65+
formattedBucketName = [NSString stringWithFormat:@"%@-%@",formattedBucketName,appID];
66+
}
5867
NSString *regionNametmp = nil;
5968
if (regionName) {
6069
regionNametmp = regionName;
6170
}else{
6271
regionNametmp = self.regionName;
6372
}
64-
NSString *tmpBucket = formattedBucketName;
65-
if (appID) {
66-
tmpBucket = [NSString stringWithFormat:@"%@-%@",formattedBucketName,appID];
67-
}
6873
NSURL *serverURL;
6974

70-
if (_isPrefixURL) {
71-
if (regionNametmp) {
72-
serverURL = [NSURL URLWithString:[NSString stringWithFormat:@"%@://%@.cos.%@.%@",scheme,tmpBucket,regionNametmp,self.serviceName]];
73-
}else{
74-
serverURL = [NSURL URLWithString:[NSString stringWithFormat:@"%@://%@.cos.%@",scheme,tmpBucket,self.serviceName]];
75-
}
76-
}else{
77-
if (regionNametmp) {
78-
serverURL = [NSURL URLWithString:[NSString stringWithFormat:@"%@://cos.%@.%@/%@",scheme,regionNametmp,self.serviceName,tmpBucket]];
79-
}else{
80-
serverURL = [NSURL URLWithString:[NSString stringWithFormat:@"%@://cos.%@/%@",scheme,self.serviceName,tmpBucket]];
81-
}
82-
}
83-
75+
serverURL = [NSURL URLWithString:[NSString stringWithFormat:@"%@://%@.cos.%@.%@",scheme,formattedBucketName,regionNametmp,self.serviceName]];
76+
if (!self.isPrefixURL) {
77+
serverURL = [NSURL URLWithString:[NSString stringWithFormat:@"%@://%@.cos.%@/%@",scheme,regionNametmp,self.serviceName,formattedBucketName]];
78+
}
79+
if (self.suffix) {
80+
serverURL = [NSURL URLWithString:[NSString stringWithFormat:@"%@://%@.%@",scheme,formattedBucketName,self.suffix]];
81+
if (!self.isPrefixURL) {
82+
serverURL = [NSURL URLWithString:[NSString stringWithFormat:@"%@://%@/%@",scheme,self.suffix,formattedBucketName]];
83+
}
84+
}
85+
86+
// NSString* formattedBucketName = [self formattedBucket:bucket withAPPID:appID]; ;
87+
// NSString *regionNametmp = nil;
88+
// if (regionName) {
89+
// regionNametmp = regionName;
90+
// }else{
91+
// regionNametmp = self.regionName;
92+
// }
93+
// NSString *tmpBucket = formattedBucketName;
94+
// if (appID) {
95+
// tmpBucket = [NSString stringWithFormat:@"%@-%@",formattedBucketName,appID];
96+
// }
97+
// NSURL *serverURL;
98+
//
99+
// if (_isPrefixURL) {
100+
// if (regionNametmp) {
101+
// serverURL = [NSURL URLWithString:[NSString stringWithFormat:@"%@://%@.cos.%@.%@",scheme,tmpBucket,regionNametmp,self.serviceName]];
102+
// }else{
103+
// serverURL = [NSURL URLWithString:[NSString stringWithFormat:@"%@://%@.cos.%@",scheme,tmpBucket,self.serviceName]];
104+
// }
105+
// }else{
106+
// if (regionNametmp) {
107+
// serverURL = [NSURL URLWithString:[NSString stringWithFormat:@"%@://cos.%@.%@/%@",scheme,regionNametmp,self.serviceName,tmpBucket]];
108+
// }else{
109+
// serverURL = [NSURL URLWithString:[NSString stringWithFormat:@"%@://cos.%@/%@",scheme,self.serviceName,tmpBucket]];
110+
// }
111+
// }
112+
113+
114+
84115
return serverURL;
85116
}
86117
-(void)setIsPrefixURL:(BOOL)isPrefixURL{
@@ -107,6 +138,7 @@ - (id)copyWithZone:(NSZone *)zone {
107138
endpoint.regionName = self.regionName;
108139
endpoint.serviceName = self.serviceName;
109140
endpoint.isPrefixURL = self.isPrefixURL;
141+
endpoint.suffix = self.suffix;
110142
return endpoint;
111143
}
112144
@end

QCloudCOSXML/Classes/Base/QCloudCOSXMLService.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -33,8 +33,8 @@
3333

3434
@interface QCloudCOSXMLService : QCloudService
3535
#pragma hidden super selectors
36-
- (int) performRequest:(QCloudBizHTTPRequest *)httpRequst NS_UNAVAILABLE;
37-
- (int) performRequest:(QCloudBizHTTPRequest *)httpRequst withFinishBlock:(QCloudRequestFinishBlock)block NS_UNAVAILABLE;
36+
- (int) performRequest:(QCloudBizHTTPRequest *)httpRequst isHaveBody:(BOOL)body NS_UNAVAILABLE;
37+
- (int) performRequest:(QCloudBizHTTPRequest *)httpRequst isHaveBody:(BOOL)body withFinishBlock:(QCloudRequestFinishBlock)block NS_UNAVAILABLE;
3838

3939
#pragma Factory
4040
+ (QCloudCOSXMLService*) defaultCOSXML;

QCloudCOSXML/Classes/Base/QCloudCOSXMLService.m

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -59,30 +59,30 @@ + (QCloudCOSXMLService*) defaultCOSXML
5959
- (QCloudHTTPSessionManager*) sessionManager {
6060

6161
@synchronized(self) {
62-
if (self.configuration.backgroundEnable) {
63-
if (self.configuration.backgroundIn4GEnable) {
62+
if (self.isHaveBody) {
63+
if (self.configuration.backgroundEnable) {
6464
return [QCloudHTTPSessionManager sessionManagerWithBackgroundIdentifier:self.configuration.backgroundIdentifier];
6565
}else{
66-
if (([QCloudNetEnv shareEnv].currentNetStatus == QCloudReachableViaWiFi)) {
67-
return [QCloudHTTPSessionManager sessionManagerWithBackgroundIdentifier:self.configuration.backgroundIdentifier];
68-
}else{
69-
return [QCloudHTTPSessionManager shareClient];
70-
}
66+
return [QCloudHTTPSessionManager shareClient];;
7167
}
72-
68+
}else{
69+
return [QCloudHTTPSessionManager shareClient];;
7370
}
71+
7472
}
75-
7673
return [QCloudHTTPSessionManager shareClient];
7774
}
7875

7976
+ (QCloudCOSXMLService*) registerDefaultCOSXMLWithConfiguration:(QCloudServiceConfiguration*)configuration
8077
{
8178
@synchronized (self) {
8279
COSXMLService = [[QCloudCOSXMLService alloc] initWithConfiguration:configuration];
83-
#if TARGET_OS_IPHONE
84-
[QCloudLogManager sharedInstance];
85-
#endif
80+
if (!configuration.isCloseShareLog) {
81+
#if TARGET_OS_IPHONE
82+
[QCloudLogManager sharedInstance];
83+
#endif
84+
}
85+
8686
}
8787
return COSXMLService;
8888
}

QCloudCOSXML/Classes/Base/QualityDataUploader.m

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,7 @@ +(BOOL)isNeedQuality:(Class)cls{
6262

6363
+(TACMTAErrorCode)internalUploadEvent:(NSString *)eventKey withParamter:(NSDictionary *)paramter {
6464
TACMTAErrorCode result = [TACMTA trackCustomKeyValueEvent:eventKey props:paramter];
65+
QCloudLogDebug(@"%@ :%@",eventKey,paramter);
6566
return result;
6667
}
6768

QCloudCOSXML/Classes/Manager/QCloudCOSXMLService+Manager.m

Lines changed: 28 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -43,114 +43,114 @@
4343
@implementation QCloudCOSXMLService (Manager)
4444
- (void) AppendObject:(QCloudAppendObjectRequest*)request
4545
{
46-
[super performRequest:request];
46+
[super performRequest:request isHaveBody:NO];
4747
}
4848
- (void) GetObjectACL:(QCloudGetObjectACLRequest*)request
4949
{
50-
[super performRequest:request];
50+
[super performRequest:request isHaveBody:NO];
5151
}
5252

5353
- (void) PutObjectACL:(QCloudPutObjectACLRequest*)request
5454
{
55-
[super performRequest:request];
55+
[super performRequest:request isHaveBody:NO];
5656
}
5757
- (void) DeleteObject:(QCloudDeleteObjectRequest*)request
5858
{
59-
[super performRequest:request];
59+
[super performRequest:request isHaveBody:NO];
6060
}
6161
- (void) DeleteMultipleObject:(QCloudDeleteMultipleObjectRequest*)request
6262
{
63-
[super performRequest:request];
63+
[super performRequest:request isHaveBody:NO];
6464
}
6565

6666
- (void) OptionsObject:(QCloudOptionsObjectRequest*)request
6767
{
68-
[super performRequest:request];
68+
[super performRequest:request isHaveBody:NO];
6969
}
7070

7171

7272
- (void) PutBucket:(QCloudPutBucketRequest*)request
7373
{
74-
[super performRequest:request];
74+
[super performRequest:request isHaveBody:NO];
7575
}
7676
- (void) GetBucket:(QCloudGetBucketRequest*)request
7777
{
78-
[super performRequest:request];
78+
[super performRequest:request isHaveBody:NO];
7979
}
8080
- (void) GetBucketACL:(QCloudGetBucketACLRequest*)request
8181
{
82-
[super performRequest:request];
82+
[super performRequest:request isHaveBody:NO];
8383
}
8484
- (void) GetBucketCORS:(QCloudGetBucketCORSRequest*)request
8585
{
86-
[super performRequest:request];
86+
[super performRequest:request isHaveBody:NO];
8787
}
8888
- (void) GetBucketLocation:(QCloudGetBucketLocationRequest*)request
8989
{
90-
[super performRequest:request];
90+
[super performRequest:request isHaveBody:NO];
9191
}
9292
- (void) GetBucketLifecycle:(QCloudGetBucketLifecycleRequest*)request
9393
{
94-
[super performRequest:request];
94+
[super performRequest:request isHaveBody:NO];
9595
}
9696

9797
- (void) PutBucketACL:(QCloudPutBucketACLRequest*)request
9898
{
99-
[super performRequest:request];
99+
[super performRequest:request isHaveBody:NO];
100100
}
101101
- (void) PutBucketCORS:(QCloudPutBucketCORSRequest*)request
102102
{
103-
[super performRequest:request];
103+
[super performRequest:request isHaveBody:NO];
104104
}
105105
- (void) PutBucketLifecycle:(QCloudPutBucketLifecycleRequest*)request
106106
{
107-
[super performRequest:request];
107+
[super performRequest:request isHaveBody:NO];
108108
}
109109

110110
- (void) DeleteBucketCORS:(QCloudDeleteBucketCORSRequest*)request
111111
{
112-
[super performRequest:request];
112+
[super performRequest:request isHaveBody:NO];
113113
}
114114
- (void) DeleteBucketLifeCycle:(QCloudDeleteBucketLifeCycleRequest*)request
115115
{
116-
[super performRequest:request];
116+
[super performRequest:request isHaveBody:NO];
117117
}
118118

119119
- (void) DeleteBucket:(QCloudDeleteBucketRequest*)request
120120
{
121-
[super performRequest:request];
121+
[super performRequest:request isHaveBody:NO];
122122
}
123123
- (void) HeadBucket:(QCloudHeadBucketRequest*)request
124124
{
125-
[super performRequest:request];
125+
[super performRequest:request isHaveBody:NO];
126126
}
127127
- (void) ListBucketMultipartUploads:(QCloudListBucketMultipartUploadsRequest*)request
128128
{
129-
[super performRequest:request];
129+
[super performRequest:request isHaveBody:NO];
130130
}
131131
- (void) PutBucketVersioning:(QCloudPutBucketVersioningRequest*)request {
132-
[super performRequest:request];
132+
[super performRequest:request isHaveBody:NO];
133133
}
134134
- (void) GetBucketVersioning:(QCloudGetBucketVersioningRequest*)request {
135-
[super performRequest:request];
135+
[super performRequest:request isHaveBody:NO];
136136
}
137137
- (void) PutBucketRelication:(QCloudPutBucketReplicationRequest*)request {
138-
[super performRequest:request];
138+
[super performRequest:request isHaveBody:NO];
139139
}
140140
- (void) GetBucketReplication:(QCloudGetBucketReplicationRequest*)request {
141-
[super performRequest:request];
141+
[super performRequest:request isHaveBody:NO];
142142
}
143143
- (void) DeleteBucketReplication:(QCloudDeleteBucketReplicationRequest*)request {
144-
[super performRequest:request];
144+
[super performRequest:request isHaveBody:NO];
145145
}
146146
- (void) GetService:(QCloudGetServiceRequest*)request {
147-
[super performRequest:request];
147+
[super performRequest:request isHaveBody:NO];
148148
}
149149
- (void) PostObjectRestore:(QCloudPostObjectRestoreRequest*)request {
150-
[super performRequest:request];
150+
[super performRequest:request isHaveBody:NO];
151151
}
152152
- (void) ListObjectVersions:(QCloudListObjectVersionsRequest *)request {
153-
[super performRequest:request];
153+
[super performRequest:request isHaveBody:NO];
154154
}
155155
- (void) getPresignedURL:(QCloudGetPresignedURLRequest*)request {
156156

QCloudCOSXML/Classes/Manager/model/QCloudLifecycleRule.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -64,10 +64,10 @@ Filter 用于描述规则影响的 Object 集合
6464
/**
6565
指明非当前版本对象何时过期
6666
*/
67-
@property (strong, nonatomic) QCloudNoncurrentVersionTransition *noncurrentVersionExpiration;
67+
@property (strong, nonatomic) QCloudNoncurrentVersionTransition *noncurrentVersionTransition;
6868
/**
6969
指明非当前版本对象何时转换被转换为 Standard_IA 等
7070
*/
71-
@property (strong, nonatomic) QCloudNoncurrentVersionExpiration *noncurrentVersionTransition;
71+
@property (strong, nonatomic) QCloudNoncurrentVersionExpiration *noncurrentVersionExpiration;
7272
@end
7373
NS_ASSUME_NONNULL_END

QCloudCOSXML/Classes/QCloudCOSXMLVersion.h

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,11 @@
66

77
#ifndef QCloudCOSXMLModuleVersion_h
88
#define QCloudCOSXMLModuleVersion_h
9-
#define QCloudCOSXMLModuleVersionNumber 505007
9+
#define QCloudCOSXMLModuleVersionNumber 505008
1010

1111
//dependency
12-
#if QCloudCoreModuleVersionNumber != 505007
13-
#error "库QCloudCOSXML依赖QCloudCore最小版本号为5.5.7,当前引入的QCloudCore版本号过低,请及时升级后使用"
12+
#if QCloudCoreModuleVersionNumber != 505008
13+
#error "库QCloudCOSXML依赖QCloudCore最小版本号为5.5.8,当前引入的QCloudCore版本号过低,请及时升级后使用"
1414
#endif
1515

1616
//

0 commit comments

Comments
 (0)