Transition from UIWebView to WKWebView

Hi,

Are there any updates on improvements to provide a NSURLProtocol like interception api in iOS14 that would allow apps to capture requests that are loaded in the webview to tunnel/proxy? This is a major blocker to move away from UIWebView.

There were some chatter here https://bugs.webkit.org/show_bug.cgi?id=138169#c52 to implement a proxy solution but we couldn't find any of it in the APIs of iOS 14 that was released for developer preview today.

Can you shed some light?

Replies

There's nothing new to announce at this time.

If you *personally* haven't filed a Feedback Assistant ticket with *your specific* use case, I highly encourage you to do so.

We don't necessarily need more people telling us they need something like this, or some sort of raw dupe count. We do need specific use cases.
41638060 is the Feedback assistance ticket that was created with our specific use case.
Related to this topic, our Sub Rosa product performs certificate based TLS authentication using a smart card. We use UIWebView and an NSURLProtocol subclass to implement our own HTTPS and TLS layers.

Our use case is this: we need to be able to deliver a certificate to WKWebView AND be able to provide the crypt result for the TLS Certificate Verify signature.

If we could implement a SecKey where our code handles the signature for TLS that would be a solution. I don't believe CryptoTokenKit is available on iOS even though the documentation says it is.

If we could use WKURLSchemeHandler that would be a solution, but WKURLSchemeHandler does not support redirection, and our app would need to re-write URL schemes and that may lead to security problems.

If we could create/extend a URLCredential that would contain the certificates and TLS signature similar to init(identity: SecIdentity, certificates: [Any]?, persistence: URLCredential.Persistence) that would be a solution (and one that we would prefer).
The feedback assistant number for my issue is FB7760918 There is no adequate replacement for UIWebView and NSURLProtocol for custom TLS certificate authentication.
FB5674700 is the feedback assistant ticket corresponding to the radar 41638060 posted in my previous comment.