secret español developer desarrollador cuenta consumerkey clave twitter twitter-oauth

español - twitter login php



Código de error 220-"Sus credenciales no permiten el acceso a este recurso" Cuando intenta obtener retweets (4)

Cuando intento obtener https://api.twitter.com/1.1/statuses/retweets/21947795900469248.json con mis credenciales autorizadas (oauth) , (oauth) :

{ "errors": [ { "message": "Your credentials do not allow access to this resource", "code": 220 } ] }

error: cualquier otra identificación twit no funciona. ¿Hay algún problema con este punto final? Porque estaba obteniendo una respuesta verdadera hasta ayer. ¿Algo cambió?


Estaba recibiendo el mismo error cuando noté que estaba usando GET en lugar de POST. Lo cambió y funcionó.


Establezca permisos de aplicación para Leer, escribir y dirigir mensajes ... y Regenerar Token de acceso y Token Secret.

Funcionó para mí


Experimenté el mismo problema al obtener el código de error 220. La reparación en mi caso fue solicitar al usuario que ingrese su contraseña de Twitter nuevamente.

Verifique el código de muestra a continuación:

SLRequest *request = [SLRequest requestForServiceType:SLServiceTypeTwitter requestMethod:SLRequestMethodPOST URL:[NSURL URLWithString:@"https://api.twitter.com/1.1/statuses/update.json"] parameters:@{@"status": tweetString}]; [request setAccount:account]; [request performRequestWithHandler:^(NSData *responseData, NSHTTPURLResponse *urlResponse, NSError *error) { if ([responseData isKindOfClass:[NSData class]]) { NSError *jsonError = nil; NSDictionary *json = [NSJSONSerialization JSONObjectWithData:responseData options:0 error:&jsonError]; if (json) { NSArray *errors = json[@"errors"]; if (errors.count) { NSUInteger errorCode = [json[@"errors"][0][@"code"] integerValue]; if (errorCode == 220) { ACAccountStore *accountStore = [[ACAccountStore alloc] init]; [accountStore renewCredentialsForAccount:account completion:^(ACAccountCredentialRenewResult renewResult, NSError *error2) { NSLog(@"Renew result: %ld, error: %@", (long)renewResult, error2); if (renewResult == ACAccountCredentialRenewResultRenewed) { [self __makeTweetWithAccounts:@[account] rating:rating review:review]; } }]; } } } } NSLog(@"Twitter response data: %@", [[NSString alloc] initWithData:responseData encoding:NSUTF8StringEncoding]); }];


Tuve un problema similar con la clase SLRequest en iOS SDK7.1. Ahora para obtener retweets, o publicar retweet, comencé a usar la clase obsoleta TWRequest. Solo importa el recurso y utiliza este método:

- (void)retweetMessageV2HavingId:(NSString*)messageId { NSString *retweetString = [NSString stringWithFormat:@"https://api.twitter.com/1.1/statuses/retweet/%@.json", messageId]; NSURL *retweetURL = [NSURL URLWithString:retweetString]; TWRequest *request = [[TWRequest alloc] initWithURL:retweetURL parameters:nil requestMethod:TWRequestMethodPOST]; request.account = self.account; [request performRequestWithHandler:^(NSData *responseData, NSHTTPURLResponse *urlResponse, NSError *error) { if (responseData) { NSError *parseError = nil; id json = [NSJSONSerialization JSONObjectWithData:responseData options:0 error:nil]; if (!json) { NSLog(@"Parse Error: %@", parseError); } else { NSLog(@"%@", json); } } else { NSLog(@"Request Error: %@", [error localizedDescription]); } }]; }