最近碰到一个棘手的问题,先描述一下问题:我们项目里的帮助反馈用的webview,webview请求数据调用的是原生的方法,然后成功后,我们再通过h5约定的一个方法把数据回传给h5,他们负责展示。可是最近测试反馈一个问题:feedback分页加载,请求第三页数据一直loading,直到超时。我经过调试终于定位出了问题:原来是第三页数据里有特殊字符,然后调用js的下面方法时报错了
if (script) {
[self.webView evaluateJavaScript:script completionHandler:^(id _Nullable result, NSError * _Nullable error) {
if (result) {
}
if (error) {
}
}];
}


百度google了半天,结果说的最多是说我调用的时机不对,很明显我这里不是这个原因。我这里报错是说我拼接出来的字符串有问题。虽然知道大致的原因,但是还是没有找到解决办法。直到问了同学,他之前研究过wkwebviewbridge的源码,说到里边有类似的地方,果然我把里边字符串处理的方法粘贴出来,问题得到了解决。
