WKWebView:表单未在WKWebView中提交快速

问题描述

我正在使用 WKWebView ,并且在提交表单时,我在 decidePolicyFor navigationAction 委托方法中获得了断点,并且以下条件也成立。

navigationAction.navigationType == .formSubmitted

以下代码也正在打印预期数据-

print(String(data:(navigationAction.request.httpBody!),编码: .utf8)) 打印(navigationAction.request.mainDocumentURL)

有人可以帮我解决这个问题吗? Xcode版本:12 iOS版本:14

我是否必须配置某些内容或允许某些策略使其起作用?

解决方法

您的JavaScript是否有UIDelegate?如果是这样,您将需要自己处理。实现WKWebView的optional func webView(_ webView: WKWebView,createWebViewWith configuration: WKWebViewConfiguration,for navigationAction: WKNavigationAction,windowFeatures: WKWindowFeatures) -> WKWebView? 并通过以下方法处理操作:

{{1}}

在这种方法中,您可以使用获取的配置创建一个新的WKWebView并将其显示在屏幕上。