WKWebView可以支持encoded url吗?

Can WKWebView support encoded url?

如果我使用编码url在WKWebView中打开,这个webView无法打开这个link。

NSString* request = @"http%3A%2F%2Fwww.baidu.com%0A";
NSURL* url = [NSURL URLWithString:request];
[self.webView loadRequest:[NSURLRequest requestWithURL:url]];

所以我必须在将 url 传递给 WKWebView 之前对其进行解码。 任何其他使 WKWebView 支持编码的漂亮方法 url?

不行,没有别的办法。解码 URL。我猜你是从 URL 查询字符串字段中得到的。如果是这样,请利用 NSURLComponents。这使得获取查询字符串部分的未编码值变得容易。

NSString *valueForKeyInURL(NSString *key, NSURL *URL) {
    NSURLComponents *components =
        [NSURLComponents componentsWithURL:URL
                   resolvingAgainstBaseURL:NO];
    NSURLQueryItem *theField = nil;
    for (NSURLQueryItem *item in components.queryItems) {
        if ([item.name isEqual:key]) {
            theField = item;
            break;
        }
    }
    return item.value;
}