Ios AFNetworking 2.0可访问性错误地报告不可访问-AFNetworkReachilityStatusNotReachable
我正在使用AFNetworking 2.0的可达性功能,正如他们的示例代码中所述——我在本地LAN中有一个测试服务器,我的iOS应用程序在测试期间与之通信。当我在打开WLAN的模拟器中运行应用程序时,AFNetworking最初报告服务器/URL是可访问的,但随后将其更改为不可访问(即使服务器在那里,可访问且WLAN工作正常)。这意味着它关闭了操作队列,这样应用程序就不会与服务器通信,即使它肯定可以 有什么建议可以解释为什么AFNetworking错误地将本地服务器/URL报告为无法访问 这是我的密码:Ios AFNetworking 2.0可访问性错误地报告不可访问-AFNetworkReachilityStatusNotReachable,ios,reachability,afnetworking-2,Ios,Reachability,Afnetworking 2,我正在使用AFNetworking 2.0的可达性功能,正如他们的示例代码中所述——我在本地LAN中有一个测试服务器,我的iOS应用程序在测试期间与之通信。当我在打开WLAN的模拟器中运行应用程序时,AFNetworking最初报告服务器/URL是可访问的,但随后将其更改为不可访问(即使服务器在那里,可访问且WLAN工作正常)。这意味着它关闭了操作队列,这样应用程序就不会与服务器通信,即使它肯定可以 有什么建议可以解释为什么AFNetworking错误地将本地服务器/URL报告为无法访问 这是我
AFHTTPRequestOperationManager *mgr = [[AFHTTPRequestOperationManager alloc] initWithBaseURL:[NSURL URLWithString:@"http://192.168.188.20:3000/"]];
NSOperationQueue *operationQueue = self.httpManager.operationQueue;
[mgr.reachabilityManager setReachabilityStatusChangeBlock:^(AFNetworkReachabilityStatus status)
{
NSLog(@"Reachability for %@ has changed to %@", @"http://192.168.188.20:3000/",AFStringFromNetworkReachabilityStatus(status));
switch (status) {
case AFNetworkReachabilityStatusReachableViaWWAN:
case AFNetworkReachabilityStatusReachableViaWiFi:
NSLog(@"re-enabling operation queue");
[operationQueue setSuspended:NO];
break;
case AFNetworkReachabilityStatusNotReachable:
default:
NSLog(@"disabling operation queue");
[operationQueue setSuspended:YES];
break;
}
}];
当我运行应用程序时,我得到以下日志输出-WLAN工作正常,本地服务器以给定的IP和端口号运行:
Jan 31 13:21:04 MyApp[10671] <Warning>: Reachability for http://192.168.188.20:3000/ has changed to Reachable via WiFi
Jan 31 13:21:04 MyApp[10671] <Warning>: re-enabling operation queue
Jan 31 13:21:04 MyApp[10671] <Warning>: Reachability for http://192.168.188.20:3000/ has changed to Not Reachable
Jan 31 13:21:04 MyApp[10671] <Warning>: disabling operation queue`
Jan 31 13:21:04 MyApp[10671]:可访问性http://192.168.188.20:3000/ 已更改为可通过WiFi访问
Jan 31 13:21:04 MyApp[10671]:重新启用操作队列
Jan 31 13:21:04 MyApp[10671]:可访问性http://192.168.188.20:3000/ 已更改为无法访问
Jan 31 13:21:04 MyApp[10671]:禁用操作队列`
当我在本地LAN之外的实时服务器上尝试时,也会发生同样的情况。然而,这并不总是发生
还有其他人经历过吗?在最初正确报告为正常后,为什么可达性被错误地更改为不可达?我似乎得到了相同的行为,但不确定是否有解决方案。Dd您得到了解决方案。我也在为同样的问题而挣扎。当设备连接到网络时,My API随机返回错误域=nsurErrorDomain Code=-1003“找不到具有指定主机名的服务器”。