无法从我的iPhone应用程序发布到Twitter

时间:2011-02-24 19:38:22

标签: objective-c ios4 twitter

我正在使用这一小块代码在Twitter上发布,使用真实凭据代替'mytwitterloginname'和'mytwitterpassword'占位符:

void _StartTwitter()
{

    NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:
                                    [NSURL URLWithString:@"http://mytwitterloginname:mytwitterpassword@twitter.com/statuses/update.xml"] 
                                                           cachePolicy:NSURLRequestUseProtocolCachePolicy timeoutInterval:30.0];

    // The text to post
    NSString *msg = @"testing";

    // Set the HTTP request method
    [request setHTTPMethod:@"POST"];

    [request setHTTPBody:[[NSString stringWithFormat:@"status=%@", msg] 
                          dataUsingEncoding:NSASCIIStringEncoding]];

    NSURLResponse *response;
    NSError *error;

    if ([NSURLConnection sendSynchronousRequest:request 
                              returningResponse:&response error:&error] != nil)
        NSLog(@"Posted to Twitter successfully.");
        else 
            NSLog(@"Error posting to Twitter."); 
}  

但即使是我的控制台也说这个帖子很成功,但仍然没有发生。

任何人都可以帮我找到错误吗?谢谢。

1 个答案:

答案 0 :(得分:3)

我虽然twitter现在只有O-AUTH身份验证,所以你不能再通过他们的REST服务发布信息了。

您可能需要重新集成其新的OAUTH服务。

<强>更新

以下是OAUTH示例的链接:  Twitter - OAUTH

我需要做的无聊部分是创建一个WebUI视图,以便完成twitter现在强制执行的愚蠢步骤。在进行身份验证请求(绑定到在twitter中创建的应用程序)后,我的会话已创建,从那里我可以发布消息。

不像以前的REST服务那样用户友好:/