【问题标题】:iOS can't send dictionary parameters in FBSDKGraphRequestiOS 无法在 FBSDKGraphRequest 中发送字典参数
【发布时间】:2016-12-04 11:32:45
【问题描述】:

我正在尝试从我的应用中以合理的质量获取 Facebook 用户的个人资料图片。默认情况下,在没有任何参数的情况下,对路径“me?fields=picture”的请求会获取较小的参数,但使用带有键@“type”和值@“large”的参数字典将检索大参数。但是,api似乎忽略了参数。

FBSDKGraphRequest* picRequest = [[FBSDKGraphRequest alloc] initWithGraphPath:@"me?fields=picture" parameters:[NSDictionary dictionaryWithObject:@"small" forKey:@"type"] HTTPMethod:@"GET"];

[picRequest startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection, id result, NSError *error) {

        if (result) {

            NSString* profilePictureURLString = [[[(NSDictionary*) result objectForKey:@"picture"] objectForKey:@"data"] objectForKey:@"url"];
            NSURL* profilePictureURL = [NSURL URLWithString:profilePictureURLString];
            NSData* profilePictureData = [NSData dataWithContentsOfURL:profilePictureURL];      
       }]; 

生成的数据始终是 50x50 像素的小图片。

有人可以帮帮我吗?谢谢!

【问题讨论】:

  • 如果某人的回答解决了您的问题,您可能希望使用大复选框接受它作为答案。

标签: ios objective-c iphone facebook


【解决方案1】:

您可以设置图片的大小,如picture.width(float).height(float)。请参见下面的示例:

FBSDKGraphRequest* picRequest = [[FBSDKGraphRequest alloc] initWithGraphPath:@"me?fields=picture.width(200).height(200)"
                                                              parameters:nil
                                                              HTTPMethod:@"GET"];

您可以将请求测试到Graph API Explorer

【讨论】:

    猜你喜欢
    • 2018-07-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-06-08
    • 2022-01-06
    • 2016-01-07
    • 1970-01-01
    相关资源
    最近更新 更多