Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/106.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios AFNetworking:使用IP地址,应用程序无法访问服务器_Ios_Objective C_Afnetworking_Reachability_Afhttpclient - Fatal编程技术网

Ios AFNetworking:使用IP地址,应用程序无法访问服务器

Ios AFNetworking:使用IP地址,应用程序无法访问服务器,ios,objective-c,afnetworking,reachability,afhttpclient,Ios,Objective C,Afnetworking,Reachability,Afhttpclient,当我尝试使用ip地址而不是主机名来告诉模拟器中的ios应用程序与本地服务器对话时,该应用程序挂在加载屏幕上,等待服务器的响应,而该响应从未出现 我是Objective C的新手,但代码使用的是处理请求的AFNetowrking框架,并且为AFHTTPClient对象上的ip地址设置了不同的SCNetworkReachabilityFlags属性 调试期间捕获了ip地址和主机名的AFHTTPClient对象的以下属性 <SCNetworkReachability 0xd26d8a0 [0x5

当我尝试使用ip地址而不是主机名来告诉模拟器中的ios应用程序与本地服务器对话时,该应用程序挂在加载屏幕上,等待服务器的响应,而该响应从未出现

我是Objective C的新手,但代码使用的是处理请求的AFNetowrking框架,并且为AFHTTPClient对象上的ip地址设置了不同的SCNetworkReachabilityFlags属性

调试期间捕获了ip地址和主机名的AFHTTPClient对象的以下属性

<SCNetworkReachability 0xd26d8a0 [0x53b9ec8]>
{address = 127.0.0.1, flags = 0x00010002, if_index = 1}

<SCNetworkReachability 0xcf283f0 [0x53b9ec8]>
{name = localhost (server query active), flags = 0x80000000, if_index = 0}

我的问题是什么导致了问题,以及如何使用IP地址作为基本URL连接到服务器?

这是一个常见问题。AFHUB页面上对此进行了讨论:

域和ip地址的检查方式不同

您可以使用使用
managerForAddress:
:

我希望这有帮助!如果你还有任何问题,请告诉我

编辑

我想我误解了这个问题

我以前使用
AFHTTPRequestOperationManager
AFURLSessionManager
发送过请求,它们都使用url中的IP地址工作


可以在此处找到如何使用它们的示例:

那么,您的服务器没有响应?问题是什么?嗨,斯科特,没错,当使用ip地址时,tornado服务器没有响应。我认为AFHTTPClient永远不会发现服务器是可访问的,即使在使用主机名时也是如此。我在原来的帖子中添加了一个问题。谢谢。有没有办法使用右边的ip地址?
/* Network reachability monitoring does not establish a baseline for IP addresses as
it does for hostnames, so if the base URL host is an IP address, the initial 
reachability callback is manually triggered.
 */
if (AFURLHostIsIPAddress(self.baseURL)) {
    SCNetworkReachabilityFlags flags;
    SCNetworkReachabilityGetFlags(self.networkReachability, &flags);
    dispatch_async(dispatch_get_main_queue(), ^{
        AFNetworkReachabilityStatus status = AFNetworkReachabilityStatusForFlags(flags);
        callback(status);
    });
}