0

アプリで MSTwitterEngine を使用しています。Twitter API を v1.1 に更新すると、ユーザー情報、フォロワーのリストを取得できず、ダイレクト メッセージを送信できません。

新しい API URL を呼び出そうとしましたが、応答で不正な認証が行われました。

以下のスニペットを参照してください:-

参照:- https://dev.twitter.com/docs/api/1.1/get/followers/list

 NSString *strUrl = [NSString stringWithFormat:@"https://api.twitter.com/1.1/followers/list.json?cursor=-1&screen_name=%@",strUserName];


NSURL *url=[NSURL URLWithString:[strUrl stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]];

NSMutableURLRequest *mRequest = [NSMutableURLRequest requestWithURL:url];

[mRequest setValue:@"application/json" forHTTPHeaderField:@"content-type"];
[mRequest setHTTPMethod:@"POST"];

NSURLResponse *response = nil;
NSError *error = nil;
NSData *responseData1  = [NSURLConnection sendSynchronousRequest:mRequest returningResponse:&response error:&error];
if (error!=nil) {


}
NSString *responseString = [[NSString alloc]initWithData:responseData1 encoding:NSUTF8StringEncoding];
SBJSON *json=[SBJSON new];
NSDictionary *responseDic=[json objectWithString:responseString error:&error];

応答:- {"errors":[{"message":"Bad Authentication data","code":215}]}

4

2 に答える 2

0

新しい Twitter API では、Twitter 関連の機能を実行するには認証が必要であるとドキュメントで述べているように、Twitter からデータを取得するにはログインが必要です。

したがって、機能を実行するには、OAuthまたはTwitterフレームワークを使用してログインする必要があります

于 2013-07-02T06:24:01.503 に答える
0

上記のコードは問題ありませんが、選択した twitter アカウントを設定するだけなので、次のようにします。

NSURL *url = [NSURL URLWithString:@"https://api.twitter.com/1.1/followers/ids.json"];
NSMutableDictionary *parameters = [[NSMutableDictionary alloc] init];
[parameters setObject:your_user_id forKey:@"user_id"];
[parameters setObject:@"-1" forKey:@"cursor"];

TWRequest *request = [[TWRequest alloc] initWithURL:url parameters:parameters requestMethod:TWRequestMethodGET];
[request setAccount:your_twitter_account];
[request performRequestWithHandler:^(NSData *responseData, NSHTTPURLResponse *urlResponse, NSError *error)
 {
     if (responseData) {

         NSError *error = nil;

         NSDictionary* dict = [NSJSONSerialization JSONObjectWithData:responseData options:NSJSONReadingMutableLeaves error:&error];
         if([dict objectForKey:@"error"]!=nil)
         {

         }
         else
         {

         }
     }
 }];
[parameters release];
[request release];

これは私のために働いています..それがあなたを助けることを願っています..

于 2013-07-02T06:33:58.290 に答える