image – FBRequest:为什么不允许非文本mime类型响应? (iOS SDK)

使用Facebook iOS SDK,假设我对用户的个人资料图片执行图形请求:

[FBRequest requestForgraphPath:@"me/picture"]

我会收到这个错误

Response is a non-text MIME type; endpoints that return images and other binary data should be fetched using `NSURLRequest` and `NSURLConnection`.

这背后的原因是什么?手动编写请求只需要一分钟,但为什么这个常见任务不包含在Facebook iOS SDK中,或者我错过了什么?

通过Github上的Facebook iOS SDK repo,我们在FBRequestConnection.m中看到了这一点:

if (!error && [response.MIMEType hasPrefix:@"image"]) {
        error = [self errorWithCode:FBErrorNonTextMimeTypeReturned
                         statusCode:0
                 parsedJSONResponse:nil
                         innerError:nil
                            message:@"Response is a non-text MIME type; endpoints that return images and other "
                                    @"binary data should be fetched using NSURLRequest and NSURLConnection"];
    }

如果我正确理解这一点,FBRequestConnection会获得我想要的响应(即个人资料图片),然后告诉我我不能拥有它.多么可爱啊.为什么要首先提出请求?

对此有何评论

解决方法

相关文章

UITabBarController 是 iOS 中用于管理和显示选项卡界面的一...
UITableView的重用机制避免了频繁创建和销毁单元格的开销,使...
Objective-C中,类的实例变量(instance variables)和属性(...
从内存管理的角度来看,block可以作为方法的传入参数是因为b...
WKWebView 是 iOS 开发中用于显示网页内容的组件,它是在 iO...
OC中常用的多线程编程技术: 1. NSThread NSThread是Objecti...