実行中および動作中のリンクがありOAuthStarterKit
ます (Web ビューが遅いです!) 基本ビューには、ポップアップ Web ビューが閉じられたことを検出するための基本的なコードが付属しています (次の関数を参照)。
問題は、Linkedin サインイン ページが表示されたときにユーザーがキャンセル ボタンをクリックしたことを検出できないことです。URL: https://www.linkedin.com/uas/oauth/www.core.me
。
「キャンセルされた」ページをフィルタリングするにはどうすればよいですか?
コードのフィルタリング/クローズ
- (BOOL)webView:(UIWebView*)webView shouldStartLoadWithRequest:(NSURLRequest*)request navigationType:(UIWebViewNavigationType)navigationType
{
NSURL *url = request.URL;
NSString *urlString = url.absoluteString;
addressBar.text = urlString;
[activityIndicator startAnimating];
BOOL requestForCallbackURL = ([urlString rangeOfString:linkedInCallbackURL].location != NSNotFound);
if ( requestForCallbackURL )
{
BOOL userAllowedAccess = ([urlString rangeOfString:@"user_refused"].location == NSNotFound);
if ( userAllowedAccess )
{
[self.requestToken setVerifierWithUrl:url];
[self accessTokenFromProvider];
}
else
{
// User refused to allow our app access
// Notify parent and close this view
[[NSNotificationCenter defaultCenter]
postNotificationName:@"loginViewDidFinish"
object:self
userInfo:nil];
[self dismissModalViewControllerAnimated:YES];
}
}
else
{
// Case (a) or (b), so ignore it
}
return YES;
}