我正在尝试从 Twitter 获取 accessToken 值,以便在我的应用程序中使用它(我需要使用 API v1.1 的身份验证模型来获取 GET statuses/user_timeline);我已经在 api.twitter.com 上注册了我的应用程序,在项目中导入了AFOAuth1Client类,这是简单的代码:
- (void)viewDidLoad
{
self.twitterClient = [[AFOAuth1Client alloc] initWithBaseURL:
[NSURL URLWithString:@"https://api.twitter.com/"] key:@"MYKEY" secret:@"MYSECRETKEY"];
AFOAuth1Token *accessToken;
[self.twitterClient acquireOAuthAccessTokenWithPath:@"oauth/request_token" requestToken:accessToken accessMethod:@"GET" success:^(AFOAuth1Token *accessToken) { // I have tried also accessMethod: @"POST"
NSLog(@"Success: %@", accessToken);
} failure:^(NSError *error) {
NSLog(@"Error: %@", error);
}];
}
不幸的是 XCode 给了我这个错误:
Error: Error Domain=AFNetworkingErrorDomain Code=-1011 "Expected status code in (200-299), got 401" UserInfo=0x79a14f0 {NSLocalizedRecoverySuggestion=Failed to validate oauth signature and token, AFNetworkingOperationFailingURLResponseErrorKey=<NSHTTPURLResponse: 0x7956390>
这里有什么问题?我需要在 api.twitter.com 上注册应用程序吗?这是正确的方法,或者,在 iOS 中使用 API v1.1 的 Twitter 身份验证模型获取状态/用户时间线的更简单方法是什么?谢谢!
编辑:可能的航路点?
1) 在 dev.twitter.com 上注册一个新应用
2)在OAuth设置中,读取Consumer key和Consumer secret
3) 将默认应用访问类型设置为读取?或读/写?要求访问令牌?在....中使用这个值?