使用Facebook的iOS SDK,讓我們說我執行用戶的個人資料圖片圖要求:FBRequest:爲什麼不允許非文本MIME類型響應? (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
得到我想要的反應(即個人資料圖片),然後告訴我不能擁有它。多麼逗笑。爲什麼首先提出要求?
對此的評論?
你如何從數據中獲取圖片?我得到了大量的大括號和東西,它不工作只是試圖從它形成一本字典...我得到類似下面的東西: ({body = {id = 100002899999999; picture = {data = {「is_silhouette」= 0; url =「http://profile.ak.fbcdn.net/hprofile-ak-snc6/623595_199999892043363_26625455_q.jpg」;};};}; code = 200;}) –
NEvermind,I得到它了。但我仍然不完全確定如何得到一個大的圖片,而不是一個小的。 –