【问题标题】:Getting user profile picture in iOS6?在 iOS6 中获取用户头像?
【发布时间】:2013-01-13 00:44:21
【问题描述】:

我试过了:

meurl = [NSURL URLWithString:@"https://graph.facebook.com/me/picture"];
SLRequest *imageReq =[SLRequest requestForServiceType:SLServiceTypeFacebook requestMethod:SLRequestMethodGET URL:meurl parameters:nil];
imageReq.account = self.facebookAccount;

[imageReq performRequestWithHandler:^(NSData *responseData, NSHTTPURLResponse *urlResponse, NSError *error) {
    if (error) {
        NSLog(@"error -%@", [error debugDescription]);
    }else{
        NSString *meDataString = [[NSString alloc] initWithData:responseData encoding:NSUTF8StringEncoding];

        NSLog(@"image -%@", meDataString);
    }


}];

但我得到image - (nil)

我在该代码上方有一个其他请求,用于获取用户信息,我得到所有数据都很好。

【问题讨论】:

  • 你能检查以确保 self.facebookAccount 不为零吗?另外,如果你 po urlResponse 它说什么?

标签: ios facebook ios6


【解决方案1】:

@shannoga - 你几乎是在正确的道路上。在您的请求中,您必须使用 Facebook 用户 ID,而不是我。为此,首先提出此请求以获取用户详细信息 - https://graph.facebook.com/me 。然后从这个请求中,从 json 解析的响应数据中获取处理程序中的用户 id。使用此用户 ID 发出此请求 - https://graph.facebook.com/userid/picture。 在响应中,您将获得响应数据,即您的个人资料图像数据。

【讨论】:

【解决方案2】:

图片在您的 responseData 变量中

你可以用这个:

NSLog(@"image -%@", responseData);

查看图像十六进制值

【讨论】:

    【解决方案3】:

    您可以使用

    https://graph.facebook.com/XXXXXX/picture

    XXXXXX 是您在 FB 上的 ID。

    要获取您的 id,您可以使用:

    https://graph.facebook.com/me

    【讨论】:

      猜你喜欢
      • 2016-11-21
      • 2019-10-31
      • 2021-11-07
      • 1970-01-01
      • 2018-08-19
      • 2012-07-11
      • 1970-01-01
      • 2018-07-14
      • 2016-06-26
      相关资源
      最近更新 更多