如何通过新的Twitter API获取数据1.1 url(https://api.twitter.com/1.1/)在iPhone SDK中?
我在我的应用程序中使用MSTwitterEngine,使用twitter api更新到v1.1,我无法获取用户信息,关注者列表和发送直接消息。如何通过新的Twitter API获取数据1.1 url(https://api.twitter.com/1.1/)在iPhone SDK中?
我试图调用新的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];
Resposne: - { “错误”:[{ “消息”: “坏的认证数据”, “代码”:215 }]}
新的twitter API需要登录才能从twitter获取数据,因为他们在文档中提到需要进行身份验证才能执行任何与Twitter相关的功能。
所以现在做的任何功能任你应该登录使用OAuth或Twitter框架
你上面的代码是好的,但只有一点是,将选定的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];
这是为我工作..希望它会帮助你..
我没有TWRequest类,你有一些链接来获得这个类? 它将与MGTwitterEngine一起工作吗? –
只需添加'Twitter.framework'。是的,它将与MGTwitterEngine一起使用。 – Venkat
我的应用程序有最低版本的ios 4.3,它已准备好上传应用程序商店,但由于叽叽喳喳我stucked。 –
我使用twitter帐户登录并获取身份验证令牌。我无法发送登录验证数据,我认为我错过了一些。如何发送认证代码或与请求的东西,Twitter知道这个URL来自认证用户? –