【发布时间】:2011-11-30 22:19:47
【问题描述】:
我正在尝试将用户创建的本地照片从我的应用程序上传到用户的 Facebook 墙。我正在使用 Objective-C 开发一个应用程序,并使用 PhFacebook 库与社交网络进行交互,但我认为我的问题更有可能来自我对与 Facebook 的实际交互的错误使用。
确实,要向用户的个人资料上传状态,在获得访问令牌后,此代码运行良好:
NSMutableDictionary *variables = [NSMutableDictionary dictionaryWithCapacity:1];
[variables setObject:@"This is a test." forKey:@"message"];
[fb sendRequest:@"me/feed" params:variables usePostRequest:YES];
但是,如果我尝试使用以下代码将照片直接上传到me/feed,它会系统性地失败,因为没有显示图像并且周围的文字是:
NSString *path = @"some/path/to/some/image/on/my/computer";
NSMutableDictionary *variables = [NSMutableDictionary dictionaryWithCapacity:2];
[variables setObject:@"This is a test." forKey:@"message"];
[variables setObject:path forKey:@"source"];
[fb sendRequest:@"me/feed" params:variables usePostRequest:YES];
我尝试将source 键修改为image、photo、picture、file 和data,但看不到任何变化,而source 似乎是最正确的。
在阅读了关于上传照片的文档:http://developers.facebook.com/docs/reference/api/photo/ 之后,我了解到 source 参数对应一个 URL。我试过直接在用户的电脑上上传图片的数据或者图片的本地路径,但是我还没有找到一种方法来上传一个还没有在互联网上的图片。我确信有办法做到这一点,甚至上传这个词也暗示图像应该是本地的!
基本上,我的问题似乎与此相反:Upload a hosted image with Facebook's Graph API by url?。
提前感谢任何可以提供帮助的人,我的 Facebook 朋友开始对所有这些测试消息感到困惑 :)
【问题讨论】:
标签: objective-c facebook facebook-graph-api