karosLi / KKJSBridge

一站式解决 WKWebView 支持离线包,Ajax/Fetch 请求,表单请求和 Cookie 同步的问题 (基于 Ajax Hook,Fetch Hook 和 Cookie Hook)
MIT License
693 stars 120 forks source link

fix: h5页面请求url为相对路径时,url的拼接问题。 #20

Closed tyrad closed 4 years ago

tyrad commented 4 years ago

作者您好,h5页面请求url为相对路径时,测试发现地址拼接处的代码有误:

 url = [[href stringByAppendingPathComponent:url] stringByStandardizingPath];

实际并不会按照期望的规则进行拼接,建议改成NSURL的拼接方式:

NSURL *newUrl = [NSURL URLWithString:url relativeToURL:[NSURL URLWithString:href]];

 NSURLComponents *urlComponents = [[NSURLComponents alloc] initWithURL:newUrl resolvingAgainstBaseURL:YES];
// 清除h5页面的参数
urlComponents.query = nil;
url = urlComponents.string;
karosLi commented 4 years ago

嗯,多谢你的PR。关于参数的话,还是最好不要清空了。

// 清除h5页面的参数 urlComponents.query = nil;