Can*_*ğlu 5 opengraph facebook-graph-api ios facebook-opengraph facebook-ios-sdk
我正在尝试使用Facebook iOS SDK 3.5发布Open Graph操作.我的行动是:
takea photo,并且photo还有一个string名为的额外必需属性filter.
我正在创建我的图形对象(所有值都有效且有效):
NSMutableDictionary<FBOpenGraphObject> *object =
[FBGraphObject openGraphObjectForPostWithType:@"tonerapp:photo"
title:@"photo"
image:imageData
url:nil
description:title];
Run Code Online (Sandbox Code Playgroud)
然后我添加我的过滤器:
object[@"tonerapp:filter"] = filterName;
我尝试发布该对象,我可以确认我的filter属性是否存在(为URL请求启用FBSetting日志记录行为以显示请求数据):
Body (w/o attachments):
object: {"description":"","type":"tonerapp:photo",
"tonerapp:filter":"classic","data":{},
"fbsdk:create_object":true,
"image":{"url":"fbstaging:\/\/graph.facebook.com\/staging_resources\/MDExMDE1MjkzNzU1Njc3MDE0MjoxNTM4NzgwNjUy","user_generated":"true"},
"title":"photo"}
Run Code Online (Sandbox Code Playgroud)
我可以在那里看到我的过滤器属性,但响应如下:
error = {
code = 100;
message = "(#100) Object Missing a Required Value:
Object at URL '' of type 'tonerapp:photo' is invalid because
a required property 'tonerapp:filter' of type 'string' was not provided.";
type = OAuthException;
};
Run Code Online (Sandbox Code Playgroud)
好吧,它就在那里.我尝试了所有可能的组合,例如:
object[@"data"] = @{@"tonerapp:filter": filterName}; //包装到数据对象中
object[@"data"] = @{@"filter": filterName}; //包装到数据并删除命名空间
object[@"toner:filter"] = filterName; // app name而不是命名空间名称
object[@"filter"] = filterName; //根本没有名称空间名称
[object setObject:filterName forKey:@"tonerapp:filter"]; // setobject表示法
[object setValue:filterName forKey:@"tonerapp:filter"]; // setvalue表示法
[object setObject:filterName forKey:@"filter"]; // setobject AND没有命名空间......
甚至可能更多.我已经尝试了所有的东西,但API始终失败并出现相同的错误.我可以确认的对象的其余部分是正确的,如果我去我的Facebook应用程序,并设置filter为optional替代required,它成功地张贴.这是一个使用Graph API的错误/不充分的文档,还是我是如此盲目以至于我看不到明显的东西?
谢谢,可以.
| 归档时间: |
|
| 查看次数: |
1020 次 |
| 最近记录: |