1414const int kQNRequestCancelled = -2 ;
1515const int kQNNetworkError = -1 ;
1616
17+ /* *
18+ kCFURLErrorUnknown = -998,
19+ kCFURLErrorCancelled = -999,
20+ kCFURLErrorBadURL = -1000,
21+ kCFURLErrorTimedOut = -1001,
22+ kCFURLErrorUnsupportedURL = -1002,
23+ kCFURLErrorCannotFindHost = -1003,
24+ kCFURLErrorCannotConnectToHost = -1004,
25+ kCFURLErrorNetworkConnectionLost = -1005,
26+ kCFURLErrorDNSLookupFailed = -1006,
27+ kCFURLErrorHTTPTooManyRedirects = -1007,
28+ kCFURLErrorResourceUnavailable = -1008,
29+ kCFURLErrorNotConnectedToInternet = -1009,
30+ kCFURLErrorRedirectToNonExistentLocation = -1010,
31+ kCFURLErrorBadServerResponse = -1011,
32+ kCFURLErrorUserCancelledAuthentication = -1012,
33+ kCFURLErrorUserAuthenticationRequired = -1013,
34+ kCFURLErrorZeroByteResource = -1014,
35+ kCFURLErrorCannotDecodeRawData = -1015,
36+ kCFURLErrorCannotDecodeContentData = -1016,
37+ kCFURLErrorCannotParseResponse = -1017,
38+ kCFURLErrorInternationalRoamingOff = -1018,
39+ kCFURLErrorCallIsActive = -1019,
40+ kCFURLErrorDataNotAllowed = -1020,
41+ kCFURLErrorRequestBodyStreamExhausted = -1021,
42+ kCFURLErrorFileDoesNotExist = -1100,
43+ kCFURLErrorFileIsDirectory = -1101,
44+ kCFURLErrorNoPermissionsToReadFile = -1102,
45+ kCFURLErrorDataLengthExceedsMaximum = -1103,
46+ */
47+
1748static QNResponseInfo *cancelledInfo = nil ;
1849
1950static NSString *domain = @" qiniu.com" ;
@@ -29,9 +60,11 @@ + (instancetype)responseInfoWithInvalidArgument:(NSString *)text {
2960}
3061
3162+ (instancetype )responseInfoWithNetError : (NSError *)error host : (NSString *)host duration : (double )duration {
32- if (error.code != -1003 ) {
63+ int code = kQNNetworkError ;
64+ if (error != nil ) {
65+ code = (int )error.code ;
3366 }
34- return [[QNResponseInfo alloc ] initWithStatus: kQNNetworkError error: error host: host duration: duration];
67+ return [[QNResponseInfo alloc ] initWithStatus: code error: error host: host duration: duration];
3568}
3669
3770+ (instancetype )responseInfoWithFileError : (NSError *)error {
@@ -124,11 +157,11 @@ - (BOOL)isConnectionBroken {
124157}
125158
126159- (BOOL )needSwitchServer {
127- return _statusCode == kQNNetworkError || (_statusCode / 100 == 5 && _statusCode != 579 );
160+ return _statusCode == kQNNetworkError || (_statusCode < - 1000 && _statusCode != - 1003 ) || (_statusCode / 100 == 5 && _statusCode != 579 );
128161}
129162
130163- (BOOL )couldRetry {
131- return (_statusCode >= 500 && _statusCode < 600 && _statusCode != 579 ) || _statusCode == kQNNetworkError || _statusCode == 996 || _statusCode == 406 || (_statusCode == 200 && _error != nil );
164+ return (_statusCode >= 500 && _statusCode < 600 && _statusCode != 579 ) || _statusCode == kQNNetworkError || _statusCode == 996 || _statusCode == 406 || (_statusCode == 200 && _error != nil ) || _statusCode < - 1000 ;
132165}
133166
134167@end
0 commit comments