gpt4 book ai didi

ios - 如何检测来自 UIWebView 的身份验证质询?

转载 作者:可可西里 更新时间:2023-11-01 03:43:42 28 4
gpt4 key购买 nike

我看过 many questions当您事先知道请求需要凭据时,询问(并回答)如何提供凭据。

当我加载请求身份验证质询的网站时(以 HTTP 401 响应),我的 UIWebViewDelegate 仅收到以下回调:webView:shouldStartLoadWithRequest:navigationType: 和有时 webViewDidStartLoad:(webViewDidStartLoad: 如果我直接导​​航到该站点,似乎会被调用,如果我被重定向到该站点,它似乎不会被调用)。

通过覆盖 -[NSObject respondsToSelector:]UIWebViewDelegate 接收到一些对 uiWebView:resource:canAuthenticateAgainstProtectionSpace:forDataSource: 的调用>uiWebView:resource:didReceiveAuthenticationChallenge:fromDataSource:,这可能很有用,但当然这些是私有(private) API,可能会导致我的应用被拒绝。

我测试了一些带有嵌入式 UIWebView 的不同主流应用。到目前为止,只有 Chrome 能够正确处理这些身份验证挑战。我什至设置了自己的服务器并验证了 Chrome 仅 POST 一次。 Twitter 和 Tweetbot 失败只是永远显示加载屏幕,就像我的一样。

除了使用第二个推测性 NSURLConnection 之外,还有其他(可能非常 hacky)方法来检测这些身份验证挑战吗?如果我发出一个 POST 请求,那将双重 POST 所有内容,这很糟糕。

I've added a radar to request an enhancement to UIWebView for this .请复制它。

最佳答案

Apple now has sample code that solves this problem .它也看起来像是关于如何正确实现 NSURLProtocol 的最完整的文档。

关于ios - 如何检测来自 UIWebView 的身份验证质询?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16239484/

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