Authored by 朱小军

session重置后,需要在请求的时候额外刷新header的session review by 尹诚

@@ -42,9 +42,8 @@ static NSString *const YH_HTTP_PREFIX = @"http://"; @@ -42,9 +42,8 @@ static NSString *const YH_HTTP_PREFIX = @"http://";
42 self.httpClient.securityPolicy.allowInvalidCertificates = YES; 42 self.httpClient.securityPolicy.allowInvalidCertificates = YES;
43 self.httpClient.operationQueue.maxConcurrentOperationCount = 6; 43 self.httpClient.operationQueue.maxConcurrentOperationCount = 6;
44 [self.httpClient.requestSerializer setValue:@"gzip" forHTTPHeaderField:@"Content-Encoding"]; 44 [self.httpClient.requestSerializer setValue:@"gzip" forHTTPHeaderField:@"Content-Encoding"];
45 - if ([[YH_Analytics sharedInstance].session length] > 0) {  
46 [self.httpClient.requestSerializer setValue:[[YH_Analytics sharedInstance] session] forHTTPHeaderField:@"x-yoho-sid"]; 45 [self.httpClient.requestSerializer setValue:[[YH_Analytics sharedInstance] session] forHTTPHeaderField:@"x-yoho-sid"];
47 - } 46 +
48 self.baiduManager = [AFHTTPRequestOperationManager manager]; 47 self.baiduManager = [AFHTTPRequestOperationManager manager];
49 AFHTTPResponseSerializer *responseSerializer = [AFHTTPResponseSerializer serializer]; 48 AFHTTPResponseSerializer *responseSerializer = [AFHTTPResponseSerializer serializer];
50 responseSerializer.acceptableContentTypes = [NSSet setWithObjects:@"text/json", @"text/plain", @"text/html", @"text/xml", nil]; 49 responseSerializer.acceptableContentTypes = [NSSet setWithObjects:@"text/json", @"text/plain", @"text/html", @"text/xml", nil];
@@ -62,6 +61,11 @@ static NSString *const YH_HTTP_PREFIX = @"http://"; @@ -62,6 +61,11 @@ static NSString *const YH_HTTP_PREFIX = @"http://";
62 self.httpClient = nil; 61 self.httpClient = nil;
63 } 62 }
64 63
  64 +- (void)updateHttpClientRequestHTTPHeaderSid
  65 +{
  66 + [self.httpClient.requestSerializer setValue:[[YH_Analytics sharedInstance] session] forHTTPHeaderField:@"x-yoho-sid"];
  67 +}
  68 +
65 - (NSString *)checkHttpsPrefix:(NSString *)urlString 69 - (NSString *)checkHttpsPrefix:(NSString *)urlString
66 { 70 {
67 urlString = [self urlStringByTransformToHttpsProtocol:urlString];//进行http->https的转换 71 urlString = [self urlStringByTransformToHttpsProtocol:urlString];//进行http->https的转换
@@ -122,6 +126,8 @@ static NSString *const YH_HTTP_PREFIX = @"http://"; @@ -122,6 +126,8 @@ static NSString *const YH_HTTP_PREFIX = @"http://";
122 126
123 NSString *url = [self checkHttpsPrefix:kURLAnalyticsService]; 127 NSString *url = [self checkHttpsPrefix:kURLAnalyticsService];
124 128
  129 + [self updateHttpClientRequestHTTPHeaderSid];
  130 +
125 return [self.httpClient POST:url priority:NSOperationQueuePriorityLow parameters:newParameters success:^(AFHTTPRequestOperation *operation, id responseObject) { 131 return [self.httpClient POST:url priority:NSOperationQueuePriorityLow parameters:newParameters success:^(AFHTTPRequestOperation *operation, id responseObject) {
126 132
127 if (block) { 133 if (block) {
@@ -236,6 +242,8 @@ static NSString *const YH_HTTP_PREFIX = @"http://"; @@ -236,6 +242,8 @@ static NSString *const YH_HTTP_PREFIX = @"http://";
236 242
237 url = [self checkHttpsPrefix:url]; 243 url = [self checkHttpsPrefix:url];
238 244
  245 + [self updateHttpClientRequestHTTPHeaderSid];
  246 +
239 return [self.httpClient POST:url priority:NSOperationQueuePriorityLow parameters:newParameters success:^(AFHTTPRequestOperation *operation, id responseObject) { 247 return [self.httpClient POST:url priority:NSOperationQueuePriorityLow parameters:newParameters success:^(AFHTTPRequestOperation *operation, id responseObject) {
240 248
241 if (block) { 249 if (block) {