ios - 如何使 iOS 中的 Reachability.m 与资源的完整路径一起使用?

标签 ios reachability

我想检查设备是否连接到互联网,并检查我的网页。
所以我找到了这个答案:How to check for an active Internet connection on iOS or OSX?

其中的代码示例是:

internetReachableFoo = [Reachability reachabilityWithHostname:@"www.google.com"];

所以我说:

internetReachableFoo = [Reachability reachabilityWithHostname:@"www.weborcode.com/apps/gdjesumojepare/"];

什么不工作,它会说没有互联网连接,即使我在互联网上也是如此。

奇迹般地,我设法理解它只适用于域名 weborcode.com 或 www.weborcode.com。
但不是资源的完整路径。

有没有 war 让它与资源的完整路径一起工作?

最佳答案

如果你重新评估你的代码,你正在调用 reachabilityWithHostname,这将只检查主机名,它由两部分组成,本地部分即 www 和域部分即 weborcode.com,所以如果您要检查特定的 URL 页面,那么我建议您查看 NSURLConnection

简单的例子:

NSURL *myURL = [NSURL URLWithString: @"www.example.org/apps/gdjesumojepare/"];
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL: myURL];
NSURLResponse *response;
NSError *error;
NSData *pageData = [NSURLConnection sendSynchronousRequest: request returningResponse:    &response error: &error];

如果 pageData 返回 nil,这意味着网页已关闭,如果您收到非 nil pageData,这意味着有连接。 response 和 error 将告诉您服务器对您的响应。

关于ios - 如何使 iOS 中的 Reachability.m 与资源的完整路径一起使用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23842963/

相关文章:

ios - 是否可以使用 xcode 时间分析器从您自己的库中查看跟踪?如果没有,是否有任何替代方案?

iphone - 提取图像的 RGB 和 alpha 值

ios - 录制后临时目录中的 AVPlayer 视频在几秒钟后停止播放

xcode - 在允许非模块化包含设置为 YES 的框架模块中包含非模块化 header

iphone - 使用游戏中心向所有玩家显示相同的牌

ios - 可以强制 AVFoundation 播放本地 .ts 文件吗?

iphone - 从网络服务器加载 PLIST

iphone - 在 Xcode 4.0 上使用 Reachability.h 时出错

iphone - 为什么要考虑 Apple 的 Reachability 类而不只是尝试进行实际连接?

ios - Swift 4 中的可达性问题