iPhoneでUIWebViewをロードしているときに発生するURLリダイレクトを検出する方法はありますか. www.example.com の URL を読み込むと、他の URL にリダイレクトされます。これらのリダイレクト URL を取得する必要があり、実際にリダイレクトを処理する場所はどこですか。
10860 次
3 に答える
5
はい、できます。埋め込む
– webView:shouldStartLoadWithRequest:navigationType:
このデリゲート. このメソッドは、webview がリクエストを行うたびに呼び出されます。これで、誰かが Web ページのボタンまたはハイパーリンクをクリックすると、このメソッドが呼び出されます。この電話に出た後は、好きなことをすることができます。独自のサーバーを介してリンクをリダイレクトしたり、ユーザーのアクティビティに関するリクエストをサーバーに記録したり、場合によってはコメントページを表示したり、ナビゲーションバーを変更したりします。
おそらくrequest
、HTTP 応答コードが 3xx リダイレクトであるかどうかを判断して、必要なことを行うことができます...
于 2012-07-06T11:42:26.907 に答える
1
これを試して:
-(BOOL) webView:(UIWebView *)inWeb shouldStartLoadWithRequest:(NSURLRequest *)inRequest navigationType:(UIWebViewNavigationType)inType {
if ( inType == UIWebViewNavigationTypeLinkClicked ){
[[UIApplication sharedApplication] openURL:[inRequest URL]];
return NO;
}
return YES;
}
于 2012-07-06T11:47:48.173 に答える