ipv6

来源:互联网 发布:php nusoap wsdl 编辑:程序博客网 时间:2024/04/28 19:44

app需要修改3个地方

1.manager.responseSerializer.acceptableContentTypes =nil;

2.修改AFNetworkReachabilityManager.m文件,用下面函数替换原来的函数

[objc] view plain copy
  1. + (instancetype)manager {  
  2.     double version = [[UIDevice currentDevice].systemVersion doubleValue];  
  3.     if (version >= 9.0f) {  
  4.         struct sockaddr_in6 address; bzero(&address, sizeof(address));  
  5.         address.sin6_len = sizeof(address);  
  6.         address.sin6_family = AF_INET6;  
  7.         return [self managerForAddress:&address];  
  8.     } else {  
  9. #if (defined(__IPHONE_OS_VERSION_MIN_REQUIRED) && __IPHONE_OS_VERSION_MIN_REQUIRED >= 90000) || (defined(__MAC_OS_X_VERSION_MIN_REQUIRED) && __MAC_OS_X_VERSION_MIN_REQUIRED >= 101100)  
  10.         struct sockaddr_in6 address;  
  11.         bzero(&address, sizeof(address));  
  12.         address.sin6_len = sizeof(address);  
  13.         address.sin6_family = AF_INET6;  
  14. #else  
  15.         struct sockaddr_in address;  
  16.         bzero(&address, sizeof(address));  
  17.         address.sin_len = sizeof(address);  
  18.         address.sin_family = AF_INET;  
  19. #endif  
  20.         return [self managerForAddress:&address];  
  21.     }  
  22. }  


3.网络请求代码这样写

[objc] view plain copy
  1. AFHTTPSessionManager *manager = [AFHTTPSessionManager manager];  
  2. manager.responseSerializer.acceptableContentTypes = nil;//[NSSet setWithObject:@"text/ plain"];  
  3. manager.securityPolicy = [AFSecurityPolicy defaultPolicy];  
  4. manager.securityPolicy.allowInvalidCertificates = YES;//忽略https证书  
  5. manager.securityPolicy.validatesDomainName = NO;//是否验证域名  
0 0
原创粉丝点击