目前iOS与JS通信貌似只有两种方法:用webView的stringByEvaluatingJavaScriptFromString:方法主动获取,或者是shouldStartLoadWithRequest:回调被动接受,似乎没有其他的方式了 。由于Ajax没有刷新当前页面,所以shouldStartLoadWithRequest回调不会被执行,这种情况只能通过修改web的代码来解决,思
路是改变页面的window.location,把自己需要的参数放在url里,在Ajax执行的时候去修改window.location
UIWebView怎么拦截到网页里面JS发起的Ajax请求
ajax请求不会到这个方法里面 look this demo 加入你的工程就可以! 如果你认可我的回答,请及时采纳, ~如果你认可我的回答,请及时点击【采纳为满意回答】按钮 ~~手机提问的朋友在客户端右上角评价点【满意】即可。
1、WebView 在没发出一个请求前,会调用如下方法, 可以尝试在这里处理。 -[NSURLCache cachedResponseForRequest:] 2、再就是看看能否使用 NSURLProtocol 拦截。 没其他方法了。
1、WebView 在没发出一个请求前,会调用如下方法,
可以尝试在这里处理。
-[NSURLCache cachedResponseForRequest:]
2、再就是看看能否使用 NSURLProtocol 拦截。