我正在尝试创建一个ios应用程序,其中应用程序必须仅在Intranet连接中工作,如果尝试从不同的网络访问api端点,应用程序应显示警告对话框。我尝试使用apple的可达性代码.. 我没有主机名,但我的主机是ip 案例场景:
当连接到不同的网络时,它表示未连接,api调用也失败..需要什么
但是当连接到同一个网络时,端点正在给我成功响应,但可达性仍然表示,未连接
提前致谢
答案 0 :(得分:0)
听起来你的连接工作正常,但是你不知道你是否连接了。
你可以
答案 1 :(得分:0)
将此file添加到您的项目中:
然后配置您的AppDelegate
在application:didFinishLaunchingWithOptions:
方法
let reach = Reachability()
reach.monitorReachabilityChanges()
NotificationCenter.default.addObserver(self, selector: #selector(AppDelegate.networkStatusChanged(_:)), name: NSNotification.Name(rawValue: ReachabilityStatusChangedNotification), object: nil)
然后添加此方法
func networkStatusChanged(_ notification: Notification) {
let userInfo = (notification as NSNotification).userInfo
guard let status = userInfo?["Status"] as? String else { return }
if status.lowercased().contains("online") {
//CONNECTED
} else {
//NOT CONNECTED
}
}