WKWebView - 获取html表单的查询参数
WKWebView - Get query parameters of html form
我刚刚从 UIWebView 切换到 WKWebView。
我有一个 HTML 文件(作为字符串加载),其中包含一个 HTML 表单,其中包含一个文本类型的输入和一个提交按钮。
使用 UIWebView,URL 包含 URL 上的输入值作为查询参数。 (some-url.index?key=value)
当切换到 WKWebView 时,URL 不包含参数作为 URL 的一部分。
在 UIWebView 中,我得到的 URL 是这样的:
- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType
{
NSLog(@"Loading URL :%@",request.URL.absoluteString);
}
在 WKWebView 我得到 URL 像这样:
-(void)webView:(WKWebView *)webView decidePolicyForNavigationAction:(nonnull WKNavigationAction *)navigationAction decisionHandler:(nonnull void (^)(WKNavigationActionPolicy))decisionHandler {
decisionHandler(WKNavigationActionPolicyAllow);
NSLog(@"Loading URL :%@", navigationAction.request.URL.absoluteString);
}
谢谢大家的帮助。
对于以后遇到此问题的其他用户:
稍作研究后,似乎在 WKWebView 中,为了在 url 中传递查询参数,url 必须具有有效的方案(http://、https:/ /, 等..)
所有其他方法对我来说都失败了。
我刚刚从 UIWebView 切换到 WKWebView。 我有一个 HTML 文件(作为字符串加载),其中包含一个 HTML 表单,其中包含一个文本类型的输入和一个提交按钮。
使用 UIWebView,URL 包含 URL 上的输入值作为查询参数。 (some-url.index?key=value)
当切换到 WKWebView 时,URL 不包含参数作为 URL 的一部分。
在 UIWebView 中,我得到的 URL 是这样的:
- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType
{
NSLog(@"Loading URL :%@",request.URL.absoluteString);
}
在 WKWebView 我得到 URL 像这样:
-(void)webView:(WKWebView *)webView decidePolicyForNavigationAction:(nonnull WKNavigationAction *)navigationAction decisionHandler:(nonnull void (^)(WKNavigationActionPolicy))decisionHandler {
decisionHandler(WKNavigationActionPolicyAllow);
NSLog(@"Loading URL :%@", navigationAction.request.URL.absoluteString);
}
谢谢大家的帮助。
对于以后遇到此问题的其他用户:
稍作研究后,似乎在 WKWebView 中,为了在 url 中传递查询参数,url 必须具有有效的方案(http://、https:/ /, 等..)
所有其他方法对我来说都失败了。