Iphone 在没有用户身份验证的情况下获取搜索结果

Iphone 在没有用户身份验证的情况下获取搜索结果,iphone,ios,objective-c,twitter,Iphone,Ios,Objective C,Twitter,我正在为没有Twitter的用户构建一个应用程序,因此用户身份验证是不可能的。我让它与用户时间线一起工作,但与搜索无关 我从Twitter上得到了这个错误: {"errors":[{"message":"Could not authenticate you","code":32}]} 以下是我的代码: MKNetworkOperation *operation = [[MKNetworkOperation alloc] initWithURLString:@"https://api.twitt

我正在为没有Twitter的用户构建一个应用程序,因此用户身份验证是不可能的。我让它与用户时间线一起工作,但与搜索无关

我从Twitter上得到了这个错误:

{"errors":[{"message":"Could not authenticate you","code":32}]}
以下是我的代码:

MKNetworkOperation *operation = [[MKNetworkOperation alloc] initWithURLString:@"https://api.twitter.com/1.1/statuses/user_timeline.json" params:[@{ @"screen_name" : user } mutableCopy] httpMethod:@"GET"];
    [operation addHeaders:@{ @"Authorization" : [self OAuthHeaderForURL:[NSURL URLWithString:operation.url]] }];
    [operation onCompletion:^(MKNetworkOperation *completedOperation) {
        completionBlock([completedOperation responseJSON]);
    } onError:^(NSError *error) {
        NSLog(@"\n\n\nError bij User: %@", error);
    }];
    [self.networkEngine enqueueOperation:operation];
这是有问题的代码:

MKNetworkOperation *operation = [[MKNetworkOperation alloc] initWithURLString:@"https://api.twitter.com/1.1/search/tweets.json" params:[@{ @"q" : [NSString stringWithFormat:@"#%@", hashtag] } mutableCopy] httpMethod:@"GET"];
    [operation addHeaders:@{ @"Authorization" : [self OAuthHeaderForURL:[NSURL URLWithString:operation.url]] }];
    [operation onCompletion:^(MKNetworkOperation *completedOperation) {
        completionBlock([completedOperation responseJSON]);
    } onError:^(NSError *error) {
        NSLog(@"\n\n\nError bij Hashtag: %@", error);
    }];
    [self.networkEngine enqueueOperation:operation];
以下是cURL命令行字符串:

curl -X GET -H "Authorization: OAuth oauth_consumer_key="XizVPuR2LQcnL9xAzMo6AA", oauth_nonce="2806C6BC-5B67-42E4-BAC9-1D3F2D8A", oauth_signature_method="HMAC-SHA1", oauth_timestamp="1371545629", oauth_version="1.0", oauth_token="74944468-tYmMuxMaaZUxiTHuZ78Y9qljCqCiPcfKvhavS9wuU", oauth_signature="6E1ggIZYIBrRQJ9i1LeqLQBM5fc%3D"" -H "Accept-Language: en, fr, de, ja, nl, it, es, pt, pt-PT, da, fi, nb, sv, ko, zh-Hans, zh-Hant, ru, pl, tr, uk, ar, hr, cs, el, he, ro, sk, th, id, ms, en-GB, ca, hu, vi, en-us" "https://api.twitter.com/1.1/search/tweets.json?q=%23demeern"

如果有人能帮助我,那就太好了。

允许您在无需用户身份验证的情况下获取搜索结果的API是1.0版,它会显示出来,因此您需要使用一些twitter库对您的请求进行身份验证,这将指导您如何做到这一点以及如何获得搜索结果。

身份验证并非不可能,您可以使用从twitter开发站点获得的一些密钥和私钥进行身份验证。这授权您的应用程序提出您需要的请求(此要求与您的用户无关)。感谢您的帮助,您能说出我做错了什么吗?我不明白为什么用户时间线有效而搜索无效,我做错了什么?