最近在将项目内UIWebView改为WKWebView时,发现WKWebView发送POST请求,参数会丢。综合研究了一下参考资料,找到了一个最优的方案!废话不多说,直接上正文!
首先说一下网上其他人的方案:
一:加载html文件
(1)将写有动态生成form表单的JS方法放到一个本地的HTML文件里;
(2)在发送POST请求前先加载本地的HTML文件;
(3)在文件加载完成后调用WKWebView执行JS代码的方法调用HTML里写好的JS方法并给方法传值来实现POST请求。
可参考文章:WKWebView发送POST请求
个人认为该方案属于曲线救国,使代码显得冗余。
二:利用runtime对WKWebView的loadRequest进行方法替换
具体可参考:WKWebView之POST请求
三:最后说一下本人觉得的最优方案,相比前两种,代码更简洁直观,也是最优解:
注意:该方案不支持iOS 9 系统!!!
吃了大亏!!!