【问题标题】:getting the profile image from twitter从 twitter 获取个人资料图片
【发布时间】:2011-11-10 12:34:35
【问题描述】:
{
    NSString *postUrl =  @"http://api.twitter.com/1/users/profile_image.json ";
    ASIFormDataRequest *request = [[ASIFormDataRequest alloc]
                                   initWithURL:[NSURL URLWithString:postUrl]];
    [request addRequestHeader:@"Authorization"
                        value:[oAuth oAuthHeaderForMethod:@"GET"
                                                   andUrl:postUrl
                                                andParams:nil]];
    [request setPostValue: userName forKey:@"screen_name"]; 
    [request startSynchronous];
}

在我的应用程序中,我想显示使用此应用程序的用户的 twitter 个人资料图像,该应用程序用于将图像上传到 twitter。如何检索用户的个人资料图像?我为此使用了 url http://api.twitter.com/1/users/profile_image/:screen_name.format。和 ASIHTTP GET 方法。但它失败了。谁能帮我做到这一点?我使用的代码如上所示。

【问题讨论】:

    标签: iphone objective-c ios twitter asihttprequest


    【解决方案1】:

    您使用了错误的 URL,只需将 :screen_name.format 替换为用户的屏幕名称和图像格式:

    NSString *imageUrl =  @"http://api.twitter.com/1/users/profile_image/rckoenes.png";
    ASIHTTPRequest *request = [[ASIHTTPRequest alloc]
                                   initWithURL:[NSURL URLWithString:imageUrl]];
    [request startSynchronous];
    

    【讨论】:

    • rckoenes,我已经替换了 url。但我得到的响应是“状态已发布。HTTP 结果代码:200 2011-11-11 12:02:13.684 PlainOAuth[393:b303] 响应字符串: ÿØÿà"
    • 您无需登录即可使用上面的网址,它会重定向到正确的图片网址,只需在浏览器中复制该网址即可看到我的使用图标。只需触发 ASIHTTPRequest 即可使用该数据为 NSDate 和 init 图像加装。
    • @ValentinSolina 但是当被问到这个问题时。
    • 不,这是问题的答案。如果你总是在每一个地方更新你对所有 API 更改的答案,那将是一份全职工作。