session重置后,需要在请求的时候额外刷新header的session review by 尹诚
Showing
1 changed file
with
10 additions
and
2 deletions
@@ -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) { |
-
Please register or login to post a comment