0

我试过这个:

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)

我在该代码上方有另一个请求用户信息,我得到所有数据就好了。

4

3 回答 3

2

您可以使用

https://graph.facebook.com/XXXXXX/图片

其中 XXXXXX 是您在 FB 上的 id。

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

https://graph.facebook.com/me

于 2013-02-08T13:00:12.220 回答
2

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

于 2013-12-12T12:21:53.667 回答
0

图片在您的 responseData 变量中

你可以使用这个:

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

查看图像十六进制值

于 2013-03-14T00:03:21.357 回答