【发布时间】:2026-01-15 15:15:01
【问题描述】:
我只是尝试使用 iOS SDK/新图表向 Facebook 发布操作。
问题是我不断收到警告说“至少需要采取行动 一个参考'它是无效的,因为它没有指定任何参考 对象。必须至少指定以下属性之一: 事件、朋友、最爱、提醒。
这是我当前的代码:
FBSDKAccessToken *token = [FBSDKAccessToken currentAccessToken];
FBSDKGraphRequestConnection *connection = [[FBSDKGraphRequestConnection alloc] init];
NSMutableDictionary<FBGraphObject> *action = [FBGraphObject graphObject];
NSMutableDictionary<FBGraphObject> *course = [FBGraphObject openGraphObjectForPost];
course[@"og:title"] = @"My Event";
course[@"og:type"] = @"myEventApp:event";
course[@"og:url"] = [NSURL URLWithString:@"http://www.facebook.com"];
course[@"og:description"] = @"Yaba daba doo";
action[@"course"] = course;
FBSDKGraphRequest *request = [[FBSDKGraphRequest alloc] initWithGraphPath:@"me/myEventApp:add" parameters:action tokenString:token.tokenString version:@"v2.3" HTTPMethod:@"POST"];
[connection addRequest:request completionHandler:^(FBSDKGraphRequestConnection *connection, id result, NSError *error) {
if(error)
NSLog(@"%@", error);
else
NSLog(@"%@", result);
}];
[connection start];
【问题讨论】:
-
一个动作没有 og:url。一个对象,一个动作需要引用一个对象。您应该将 action[@"og:url"] 更改为 action[@"{my_object_type}"],将 {my_object_type} 替换为可以进入您的操作的对象。
-
更新了我的代码,现在我没有收到 UIAlertView 错误,而是这个错误:Error Domain=NSURLErrorDomain Code=-1002 "unsupported URL" UserInfo=0x170866400 {NSLocalizedDescription=unsupported URL, NSUnderlyingError=0x1706457f0 "unsupported URL"} 也试过 course[@"og:url"] = @"facebook.com"
-
还注意到 FBSDKLog: Unsupported FBSDKGraphRequest attachment:{ data = { }; "fbsdk:create_object" = 1; "og:description" = "Yaba daba doo"; "og:image" = "fbstatic-a.akamaihd.net/images/devsite/attachment_blank.png"; "og:title" = "我的活动"; "og:type" = "myEventApp:event"; "og:url" = "facebook.com"; },跳过。
-
好吧,facebook.com 不是该 og 对象的有效 url。
标签: ios objective-c facebook facebook-graph-api