アプリで使用するために Twitter から accessToken 値を取得しようとしています ( GET statuses/user_timelineには API v1.1 の認証モデルを使用する必要があります)。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 認証モデルを使用してstatuses/user_timeline を取得するより簡単な方法は何ですか? ありがとうございました!
編集:可能なウェイポイント?
1) dev.twitter.com で新しいアプリを登録する
2) OAuth 設定で、コンシューマ キーとコンシューマ シークレットを読み取ります
3) デフォルトのアプリ アクセス タイプを読み取りに設定しますか? または読み取り/書き込み?アクセストークンを要求しますか? この値を使用して.... ?