2010-06-22 6 views
0

Salut tout le monde, j'ai essayé de faire en sorte que Twitpic fonctionne avec succès pour télécharger une image via mon application iPhone. Cela a fonctionné bien dans le passé mais maintenant ils ont changé tout leur code d'autorisation.OAuth Echo TwitPic - Travailler avec un client Twitter sur l'iPhone

C'est ce que j'ai, et pour une raison quelconque est tout simplement me donner un échec:

oAuth = [[OAuth alloc] initWithConsumerKey:twitter_consumer_key andConsumerSecret:twitter_consumer_secret]; 

    NSString *fakeurl = @"https://api.twitter.com/1/account/verify_credentials.json"; 
    NSString *oauth_header = [oAuth oAuthHeaderForMethod:@"GET" andUrl:fakeurl andParams:nil]; 
    NSLog(@"OAuth header : %@\n\n", oauth_header); 

    NSString *url = @"http://api.twitpic.com/2/upload.json"; 

    ASIFormDataRequest *request = [ASIFormDataRequest requestWithURL:[NSURL URLWithString:url]]; 
    request.delegate = self; 
    [request addRequestHeader:@"User-Agent" value:@"ASIHTTPRequest"]; 
    request.requestMethod = @"GET"; 

    [request addRequestHeader:@"X-Verify-Credentials-Authorization" value:oauth_header];  
    [request addRequestHeader:@"X-Auth-Service-Provider" value:@"https://api.twitter.com/1/account/verify_credentials.json"]; 

    if (_imageData) { 
     NSLog(@"Pic not nil"); 
    } 

    [request setData:_imageData forKey:@"media"]; 
    [request setPostValue:@"" forKey:@"message"]; 
    [request setPostValue:twitpic_api_key forKey:@"key"]; 

    [request setDelegate:self]; 
    [request setDidFinishSelector:@selector(requestDone:)]; 
    [request setDidFailSelector:@selector(requestFailed:)]; 

    [request start]; 
+1

Quelle erreur obtenez-vous? Twitter a tellement baissé qu'il est possible que vous ne receviez qu'une erreur, car TwitPic ne peut pas transmettre votre demande de vérification des informations d'identification. – chrissr

+0

Je ne suis pas sûr comment je peux vérifier l'erreur .. Je sais juste qu'il donne un échec en exécutant "requestFailed:" – Domness

Répondre

0

Il semble que le délégué méthode a échoué est passé à l'instance de demande. Vous devriez l'interroger pour savoir quelles valeurs il a pour s'assurer que vous avez tout réglé correctement. La première étape du dépannage de ces types de problèmes consiste à vérifier que la chaîne que vous envoyez au serveur est correcte. Essayez de le soumettre via un navigateur et assurez-vous que cela fonctionne parce que vous essayez de le construire en code.

Questions connexes