gpt4 book ai didi

ios - 在 iOS 应用程序中处理互联网身份验证页面的最佳方式?

转载 作者:行者123 更新时间:2023-11-29 10:54:11 25 4
gpt4 key购买 nike

在 iOS 应用程序(通常在免费 WiFi 区域、酒店等)中处理 WiFi 身份验证页面的最佳方式是什么,例如在 Settings.app 中(当用户需要进行身份验证时,在模式中显示 WebView ) )?我对自定义解决方案有一些想法,例如检查重定向、内容类型,然后向用户显示 Web View ,但想知道是否已经实现了预先存在的解决方案。

背景:

支持 iOS 5+

所有网络请求都通过 AFNetworking 路由

最佳答案

我认为您的直觉很好。您可能至少应该做四件事:

  1. 使用 AFNetworking 的 setRedirectResponseBlock并确定何时请求 URL 是与您想要的不同的域。

  2. 在你的setCompletionBlockWithSuccess:failure:处理程序 block ,检测由不在 2xx 范围内的状态代码导致的错误。

  3. 你应该也有一个 setWillSendRequestForAuthenticationChallengeBlock在其中检测到意外的身份验证挑战。

  4. 您可能还想使用 AFNetworkReachabilityManager (基于 Apple 的 Reachability 示例)来确定连接类型(例如,识别当前没有任何 WiFi 连接)。

显然,如果 WiFi 热点需要 WPA2/WPA/WEP 密码才能连接到热点(与没有 WPA2/WPA/WEP 身份验证的热点相反,而是身份验证是质询-响应或一些基于 HTML 的身份验证),对此您无能为力,因为据 AFNetworking 所知,您根本没有 WiFi 连接(在这种情况下,上面列出的第四种技术可能会提供信息)。但是许多(大多数?)热点不需要任何密码即可连接,但会将您重定向到基于 HTML 的登录页面,在这种情况下,上述前三种技术可能会有所帮助。

据我所知,你必须自己实现这个逻辑。

关于ios - 在 iOS 应用程序中处理互联网身份验证页面的最佳方式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19146303/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com