从iOS 5访问Twitter时,OAuth访问令牌失败

时间:2011-11-11 06:44:49

标签: xcode twitter oauth ios5

我正在使用MGTwitterEngine“在我的应用程序中集成twitter。它适用于iOS 4.2。当我尝试从任何iOS 5设备访问twitter时,我遇到了身份验证令牌问题。

This page is no longer valid. It looks like someone already used the token information you provided. Please return to the site that sent you to this page and try again ... it was probably an honest mistake

经过大量的谷歌搜索后,我发现了一些建议。但是他们没有解决我的问题。 试过https而不是http。

3 个答案:

答案 0 :(得分:9)

尝试替换

请求令牌网址

  

https://api.twitter.com/oauth/request_token

授权网址

  

https://api.twitter.com/oauth/authorize

访问令牌网址

  

https://api.twitter.com/oauth/access_token

我认为这应该有效。

答案 1 :(得分:3)

嘿伙计们我尝试了以上所有解决方案,但这些都无法解决这个问题。最后我做到了 - requestRequestToken 设置新请求令牌

 [engine requestRequestToken];// added this to remove the old request token because old request token will not work with new authentication request 
 UIViewController *controller = [[SA_OAuthTwitterController controllerToEnterCredentialsWithTwitterEngine:engine delegate:self] retain];  
 [delegate presentModalViewController: controller animated: YES];

注意:它会增加加载Web视图的时间

我认为这会有所帮助......

答案 2 :(得分:2)

我解决了这个问题,检测iOS版本是为了使用MGTwitterEngine for iOS 4.3及更早版本以及TWRequest和Twitter API for iOS5。

NSString *requiredVersion = @"5.";

NSRange aRange = [[[UIDevice currentDevice] systemVersion] rangeOfString:requiredVersion];


if (aRange.location == NSNotFound )
{
      //MGTwitterEngine here
} else {
      //Twitter API here
}

这对我有用,我希望它能帮到你。