iOS_WKWebView carga archivos en el paquete en el proyecto, la ruta del archivo contiene "#"

WKWebView carga archivos locales, puede consultar la publicación del blog iOS_WKWebView para cargar páginas web locales

1. Agregue el archivo HTML al proyecto. Creé un LoactionHtml.Bundlearchivo para almacenar el archivo de recursos html. index.htmlLa forma de obtener el archivo del proyecto es la siguiente. <El directorio del archivo del proyecto de cada persona es diferente, según el suyo>

NSString *path = [[[NSBundle mainBundle] pathForResource:@"LoactionHtml" ofType:@"bundle"] stringByAppendingPathComponent:@"index.html"];

2. Ahora necesitamos leer la ruta con "#" en el Bundle local, de la siguiente manera /index.html#/pages/activity/create/index,
si seguimos el método de escritura común, encontraremos que la carga falla, y al imprimir encontraremos que el "#" en la ruta está compilado en "% 23", De esta forma, WKWebView no puede cargar correctamente la ruta correspondiente.

NSString *path = [[[NSBundle mainBundle] pathForResource:@"LoactionHtml" ofType:@"bundle"] stringByAppendingPathComponent:@"index.html#pages/activity/create/index"];
 NSURL *fileUrl = [NSURL fileURLWithPath:path];
// WKWebView加载fileUrl
[self.webView loadRequest:[NSURLRequest requestWithURL:fileUrl]];

3. ¿Cómo evitar que "#" en la ruta se compile en "% 23"?
3.1. Cambiar la forma fileURLWithPath:de obtener NSURL URLWithString:;
3.2. Empalmar Pathla cadena "file: //" antes de la ruta .
Al imprimir, podemos encontrar que el "#" en fileUrl no se ha compilado en "% 23", por lo que se puede cargar correctamente .

NSString *path = [[[NSBundle mainBundle] pathForResource:@"LoactionHtml" ofType:@"bundle"] stringByAppendingPathComponent:@"index.html#pages/activity/create/index"];
// 在path前拼接字符串"file://"
NSURL *fileUrl = [NSURL URLWithString:[@"file://" stringByAppendingString:path]];
// WKWebView加载fileUrl
[self.webView loadRequest:[NSURLRequest requestWithURL:fileUrl]];

FileUrl se imprime dos veces de la siguiente manera:

// 拼接file://
file:///Users/xxxxxxxxx/index.html#/pages/activity/create/index
// 未拼接file://
file:///Users/xxxxxxxxx/index.html%23/pages/activity/create/index

Supongo que te gusta

Origin blog.csdn.net/FlyingKuiKui/article/details/100053530
Recomendado
Clasificación