我目前负责为社交网络应用程序实现几项新功能,其中一种是每当用户发布图像时,它自动也会在用户的脸书上发布(与Instagram完全相同)。到目前为止,我想出了这个:
FBSDKAccessToken *token = [FBSDKAccessToken currentAccessToken];
FBSDKGraphRequestConnection *connection = [[FBSDKGraphRequestConnection alloc] init];
NSDictionary *parameters = @{
@"message" : @"some text",
@"picture" : @"http://fanaru.com/doge/image/18353-doge-os-x-doge.jpg",
};
FBSDKGraphRequest *request = [[FBSDKGraphRequest alloc] initWithGraphPath:@"me/photos" parameters:parameters tokenString:token.tokenString version:@"v2.3" HTTPMethod:@"POST"];
[connection addRequest:request completionHandler:^(FBSDKGraphRequestConnection *connection, id result, NSError *error) {
if(error)
NSLog(@"%@", error);
else
NSLog(@"Success");
}];
[connection start];
但每次我运行它都会收到此错误:
错误Domain = com.facebook.sdk.core Code = 8“无法完成操作。(com.facebook.sdk.core错误8)”UserInfo = 0x166a64d0 {com.facebook.sdk:FBSDKGraphRequestErrorGraphErrorCode = 324,com.facebook.sdk:FBSDKGraphRequestErrorParsedJSONResponseKey = {
body = {
错误= {
code = 324;
message =“(#324)需要上传文件”;
type = OAuthException;
};
};
代码= 400;
},com.facebook.sdk:FBSDKGraphRequestErrorHTTPStatusCodeKey = 400,com.facebook.sdk:FBSDKErrorDeveloperMessageKey =(#324)需要上传文件,com.facebook.sdk:FBSDKGraphRequestErrorCategoryKey = 0}
我知道我需要将图像上传到Facebook服务器,但我根本不知道如何做到这一点。已经从Facebook SDK文档中读取了大量页面,但仍然没有任何解决方案。理想情况下,我还需要专门为这个应用程序创建一个新的相册,但解决上面的问题是我现在主要关注的问题。
提前致谢。
编辑:就是这样,你知道,如果我将图形路径改为“我/饲料”它就可以正常工作,把图片作为链接发布,所以仍然不是我想要的。答案 0 :(得分:1)
它给你的错误是正确的。它不需要它要求您提供文件的URL,并且不包含该文件。如果您还没有图像,则需要先下载图像并将图像数据包含在参数中。
UIImage *image = (some picture I downloaded);
NSDictionary *parameters = @{
@"message" : @"some text",
@"picture" : UIImagePNGRepresentation(image),
};