Ios Twitter授权登录
我正在使用Ios Twitter授权登录,ios,twitter,twitter-oauth,sttwitter,Ios,Twitter,Twitter Oauth,Sttwitter,我正在使用STTwitter在iOS应用程序中与Twitter交互,我正在为某人更改。当我第一次使用以下代码调用twitter授权页面时: - (void)newUser { [[NetworkManager sharedInstance] resetTwitterAPI]; [[[NetworkManager sharedInstance] twitterAPI] postTokenRequest:^(NSURL *url, NSString *oauthToken) {
STTwitter
在iOS应用程序中与Twitter交互,我正在为某人更改。当我第一次使用以下代码调用twitter授权页面时:
- (void)newUser
{
[[NetworkManager sharedInstance] resetTwitterAPI];
[[[NetworkManager sharedInstance] twitterAPI] postTokenRequest:^(NSURL *url, NSString *oauthToken) {
[[UIApplication sharedApplication] openURL:url];
} oauthCallback:@"tweepr://twitter_access_token" errorBlock:^(NSError *error) {
NSLog(@"Error %s", __PRETTY_FUNCTION__);
}];
}
* Which, in turn, calls this:
- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation
{
if (![[url scheme] isEqualToString:@"tweepr"]) {
return NO;
}
NSDictionary *d = [self parametersDictionaryFromQueryString:[url query]];
NSString *token = d[@"oauth_token"];
NSString *verifier = d[@"oauth_verifier"];
[[UserLoadingRoutine sharedRoutine] setOAuthToken:token verifier:verifier];
return YES;
}
* Which finally calls this:
- (void)setOAuthToken:(NSString *)token verifier:(NSString *)verifier
{
[[[NetworkManager sharedInstance] twitterAPI] postAccessTokenRequestWithPIN:verifier successBlock:^(NSString *oauthToken, NSString *oauthTokenSecret, NSString *userID, NSString *screenName) {
NSMutableDictionary *dict = [[NSMutableDictionary alloc] init];
dict[@"nickname"] = screenName;
dict[@"token"] = oauthToken;
dict[@"secret"] = oauthTokenSecret;
dict[@"user_id"] = userID;
self.userDict = dict;
NSMutableArray *users = [self.availableUsers mutableCopy];
if (![users containsObject:dict]) {
[users addObject:dict];
}
self.availableUsers = [users copy];
[[NSUserDefaults standardUserDefaults] setObject:self.availableUsers forKey:@"availableUsers"];
[[NSUserDefaults standardUserDefaults] synchronize];
[self selectUserWithIdentifier:dict[@"nickname"]];
} errorBlock:^(NSError *error) {
NSLog(@"Error");
}];
}
twitter授权页面第一次出现时,有登录和密码字段要填写,如下所示。如果我通过上述代码再次打开授权页面以在其他用户下进行授权,则会出现,我需要在顶部注销。有没有一种方法可以通过编程实现这一点?在-[STTwitterOAuth postTokenRequest:oauthCallback:errorBlock:
中追加到URL字符串
让我知道它是否有效