1

NSURLConnection を使用して Twitter からツイートを取得しようとしていますが、1 時間あたりの最大リクエスト数 (150) に達し続けています。以下のように、認証された方法でツイートを取得する方法に切り替えましたが、それでも API 呼び出しの最大値である 150 に達しました。デバイスごとに 150 を超える Twitter リクエストを作成するにはどうすればよいですか?

ACAccountStore *store = [[ACAccountStore alloc] init];
ACAccountType *twitterAccountType = 
[store accountTypeWithAccountTypeIdentifier:ACAccountTypeIdentifierTwitter];

//  Request permission from the user to access the available Twitter accounts
[store requestAccessToAccountsWithType:twitterAccountType 
                 withCompletionHandler:^(BOOL granted, NSError *error) {
                     if (!granted) {
                         // The user rejected your request 
                         NSLog(@"User rejected access to the account.");
                     } 
                     else {
                         // Grab the available accounts
                         NSArray *twitterAccounts = 
                         [store accountsWithAccountType:twitterAccountType];

                         if ([twitterAccounts count] > 0) {
                             // Use the first account for simplicity 
                             ACAccount *account = [twitterAccounts objectAtIndex:0];

                             // Now make an authenticated request to our endpoint
                             NSMutableDictionary *params = [[NSMutableDictionary alloc] init];
                             [params setObject:@"1" forKey:@"include_entities"];

                             //  The endpoint that we wish to call
                             NSURL *url = 
                             [NSURL 
                              URLWithString:@"https://api.twitter.com/1/statuses/user_timeline.json?include_entities=true&include_rts=true&screen_name=%@&count=5",someTwitterUserName];

                             //  Build the request with our parameter 
                             TWRequest *request = 
                             [[TWRequest alloc] initWithURL:url 
                                                 parameters:params 
                                              requestMethod:TWRequestMethodGET];

                             // Attach the account object to this request
                             [request setAccount:account];

                             [request performRequestWithHandler:
                              ^(NSData *responseData, NSHTTPURLResponse *urlResponse, NSError *error) {
                                  if (!responseData) {
                                      // inspect the contents of error 
                                      NSLog(@"%@", error);
                                  } 
                                  else {
                                      NSError *jsonError;
                                      NSArray *timeline = 
                                      [NSJSONSerialization 
                                       JSONObjectWithData:responseData 
                                       options:NSJSONReadingMutableLeaves 
                                       error:&jsonError];            
                                      if (timeline) {                          
                                          // at this point, we have an object that we can parse and grab tweet information from
                                          NSLog(@"%@", timeline);
                                      } 
                                      else { 
                                          // inspect the contents of jsonError
                                          NSLog(@"%@", jsonError);
                                      }
                                  }
                              }];

                         } // if ([twitterAccounts count] > 0)
                     } // if (granted) 
                 }];
4

1 に答える 1

0

この投稿を見てみてください

解決

デフォルトで制限があるTwitterアプリの問題

于 2012-07-05T00:22:22.887 に答える