【发布时间】:2013-02-02 20:47:54
【问题描述】:
我正在尝试从 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 身份验证模型 Get statuses/user_timeline 的更简单方法是什么?谢谢!
编辑:可能的航路点?
1) 在 dev.twitter.com 上注册一个新应用
2) 在 OAuth 设置中,读取 Consumer key 和 Consumer secret
3) 将默认应用访问类型设置为读取?或读/写?要求访问令牌?在....中使用这个值?
【问题讨论】:
标签: objective-c twitter oauth afnetworking access-token