【问题标题】:iOS 9 beta : didReceiveAuthenticationChallenge method gets called for every Https site request in WkWebview but not in iOS 8iOS 9 测试版:didReceiveAuthenticationChallenge 方法在 WkWebview 中为每个 Https 站点请求调用,但在 iOS 8 中不调用
【发布时间】:2015-11-21 20:25:16
【问题描述】:

我正在使用 WkWebView 开发 iPhone/iPad 浏览器。它在 iOS 8 中运行良好,在 Xcode 6.4 中编译。当我在 iOS 9 beta 中测试同一个应用程序时,所有 https 网站(例如 google.com、Youtube.com)都没有加载

当我调试它时,发现有一个回调到 WKNavigationDelegate - didReceiveAuthenticationChallenge 方法。来自挑战保护空间的身份验证方法是 NSURLAuthenticationMethodServerTrust,未处理。所以,显然请求被取消并且页面没有加载。

我的问题是,为什么 WkWebview 仅在 iOS 9 beta 中获取 https 站点的身份验证挑战回调,但在 iOS 8 中没有

我还在 Xcode 7 beta 6 中编译了源代码并在 iOS 9 beta 设备中运行。我还使用 NSAppTransportSecurity 和 NSAllowArbitaryLoads 将 info.plist 更新为 yes 以允许 http 站点。
但仍然没有加载 https 网站。这里也报告了同样的回调问题。

iOS 9 beta 中的 WkWebview 中是否有任何与我的问题相关的更新?

【问题讨论】:

    标签: ios8 wkwebview ios-9-beta3 xcode7-beta6


    【解决方案1】:

    为什么 WkWebview 仅在 iOS 9 beta 中获取 https 站点的身份验证质询回调,而在 iOS 8 中却没有

    因为在 iOS9 中,Apple 增加了对服务器证书验证的支持,通过相同的回调触发。

    【讨论】:

    • 谢谢斯特凡。我也希望这应该是原因。是否有任何苹果文件提到这一点,以便我们可以确定这一点?我找不到任何东西。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-10-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-11-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多