har*_*lee 5 upload facebook photo ios
我已经看过几个关于这个问题的帖子,但到目前为止似乎没有什么能帮助我.基本上,我正在编写一个iOS应用程序并尝试使用Graph API将照片发布到Facebook相册.首先从服务器下载图像数据,然后将其发布到Facebook.我正在使用ASIFormDataRequest类和url https://graph.facebook.com/MY_ALBUM_ID/photos,但我一直收到以下错误:
error = {
message = "(#1) An unknown error occurred";
type = OAuthException;
};
Run Code Online (Sandbox Code Playgroud)
我的请求看起来像这样:
ASIFormDataRequest *request = [ASIFormDataRequest requestWithURL:[NSURL URLWithString:url]];
self.photoRequest = request;
[request setDelegate:self];
[request setPostValue:token forKey:@"access_token"];
[request setPostValue:message forKey:@"message"];
[request setTimeOutSeconds:240];
[request setRequestMethod:@"POST"];
UIImage *image = [UIImage imageWithData:data];
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
NSData *imageData = UIImageJPEGRepresentation(image, 0.8);
[request setData:imageData forKey:@"source"];
dispatch_async(dispatch_get_main_queue(), ^{
[request startAsynchronous];
});
});
Run Code Online (Sandbox Code Playgroud)
奇怪的是,我使用完全相同的方法将照片上传到我的服务器,用于应用程序的不同部分,一切正常.我甚至已经将我要发送到Facebook的照片上传到我的服务器,看看数据是否正确发布.一切都好了.
我已经读过Facebook有时可以吐出我看到的错误,如果它有图像格式的问题,但错误本身就很模糊.我知道我的access_token是有效的.我正在向Facebook发出的所有其他请求都运行正常.
有什么想法吗?
好吧,我想通了!
事实上,Facebook 对上传的图片有比例限制。我仍然不确定它们是什么,但就我而言,198x715 图像不符合他们的比例要求。我们联系了 Facebook 开发团队中的一位认识的人,他说他们不会改变限制,但会为 API 错误添加更好的消息传递。
希望对遇到类似问题的人有所帮助。
归档时间: |
|
查看次数: |
5228 次 |
最近记录: |