2014-05-08 113 views
1

我的問題是,我只請求一個url請求加載,但服務器使web視圖加載了一堆其他的東西。有沒有辦法知道方法webViewDidFinishLoad:哪個網址被加載?

有一個名爲webViewDidFinishLoad:的委託方法,它將作爲參數傳遞給加載完成的webview。

問題是:有什麼方法可以知道加載哪個請求?

+1

是'web視圖:shouldStartLoadWithRequest:navigationType :'呼籲這些其他人? – rmaddy

+0

是的,但是它們加載的順序可能與它們最終加載的順序不同。 –

+0

如果一次只完成一個請求,我可能在我的上一條評論中出錯。 –

回答

0

你剛纔1的方式來知道你的WebView實際要求:

NSURLRequest *request = webview.request; 

,你可以監視通過該方法開始請求:

- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType; 
+0

假設webview.request是加載的最後一個請求,這將是正確的答案。謝謝!你知道一次只能加載1個請求,或者多個請求可以異步加載嗎? –

+1

對你的希望只有1 :)但我建議閱讀關於webview加載框架等時調用的方法shouldStartLoadWithRequest的Apple文檔。 –

+0

然後,正確的方法是存儲正在加載的請求(從shouldStartLoadWithRequest中檢索:)在一個變量,因爲webview.request只是由用戶完成的請求(如我已經證實:http://s29.postimg.org/u44zjvrja/Captura_de_pantalla_2014_05_09_a_la_s_10_22_39.jpg)。請更新答案。 –

相關問題