假设我使用 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 存储库,我们可以看到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
得到我想要的响应(即个人资料图像)然后告诉我我不能拥有它。真是个逗比。为什么首先提出请求?
对此有何评论?