-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathGHNetworkLogger.m
More file actions
67 lines (60 loc) · 3.52 KB
/
GHNetworkLogger.m
File metadata and controls
67 lines (60 loc) · 3.52 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
//
// GHNetWorkLogger.m
// GHNetworkModule
//
// Created by Qincc on 2020/12/12.
//
#import "GHNetworkLogger.h"
#import "GHNetworkConstant.h"
#import "GHNetworkRequest.h"
#import "GHNetworkConfigure.h"
#import "NSObject+GHNetworkModule.h"
@implementation GHNetworkLogger
/**
输出签名
*/
+ (void)logSignInfoWithString:(NSString *)sign {
NSMutableString *logString = [NSMutableString stringWithString:@"\n-----------------------------------签名参数-----------------------------------\n"];
[logString appendFormat:@"%@", sign];
[logString appendFormat:@"\n-----------------------------------签名参数-----------------------------------\n"];
NSLog(@"%@", logString);
}
/** 请求参数 */
+ (void)logDebugInfoWithRequest:(GHNetworkRequest *)request {
NSMutableString *logString = [NSMutableString stringWithString:@"\n-----------------------------------执行请求-----------------------------------\n"];
[logString appendFormat:@"HTTP URL:\t\t%@\n", [request.baseURL stringByAppendingString:[@"" stringByAppendingPathComponent:request.methodPath]]];
[logString appendFormat:@"Method:\t\t\t%@\n", [request requestMethodName]];
[logString appendFormat:@"Version:\t\t%@\n", request.version];
NSMutableDictionary *parameters = NSMutableDictionary.dictionary;
[parameters addEntriesFromDictionary:request.normalParams];
[parameters addEntriesFromDictionary:request.encryptParams];
[parameters addEntriesFromDictionary:GHNetworkConfigure.share.generalParameters];
if (GHNetworkConfigure.share.generalDynamicParameters) {
[parameters addEntriesFromDictionary:GHNetworkConfigure.share.generalDynamicParameters()];
}
[logString appendFormat:@"Params:\n%@", parameters];
[logString appendFormat:@"\n-----------------------------------------------------------------------------\n\n"];
NSLog(@"%@", logString);
}
/** 响应数据输出 */
+ (void)logDebugInfoWithTask:(NSURLSessionTask *)sessionTask data:(NSData *)data error:(NSError *)error{
NSMutableString *logString = [NSMutableString stringWithString:@"\n-----------------------------------请求结果------------------------------------\n"];
NSHTTPURLResponse *response = (NSHTTPURLResponse *)sessionTask.response;
NSURLRequest *request = sessionTask.originalRequest;
[logString appendFormat:@"HTTP URL:\t\t%@\n", request.URL];
[logString appendFormat:@"HTTP Header:\n%@\n", request.allHTTPHeaderFields];
NSString *jsonString = [[NSString alloc] initWithData:request.HTTPBody encoding:NSUTF8StringEncoding];
[logString appendFormat:@"HTTP Body:\t\t%@\n", jsonString.stringByRemovingPercentEncoding];
[logString appendFormat:@"Status:\t\t\t%ld\t(%@)\n", (long)response.statusCode, [NSHTTPURLResponse localizedStringForStatusCode:response.statusCode]];
[logString appendFormat:@"JSONData:\n%@\n\n", [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding]];
if (error) {
[logString appendFormat:@"ErrorDomain:\t\t\t\t\t\t%@\n", error.domain];
[logString appendFormat:@"ErrorDomainCode:\t\t\t\t\t%ld\n", (long)error.code];
[logString appendFormat:@"ErrorLocalizedDescription:\t\t\t%@\n", error.localizedDescription];
[logString appendFormat:@"ErrorLocalizedFailureReason:\t\t%@\n", error.localizedFailureReason];
[logString appendFormat:@"ErrorLocalizedRecoverySuggestion:\t%@", error.localizedRecoverySuggestion];
}
[logString appendFormat:@"\n-----------------------------------------------------------------------------\n\n"];
NSLog(@"%@", logString);
}
@end