Facebook 개체 API를 사용하여 Facebook 개체를 만든 다음 나열하려고합니다. Based on the documentation 우리는 '데이터'필드에 비표준 개체 속성을 저장할 수 있어야합니다 (예 : 음식 개체의 칼로리 값 또는 산 개체의 높이 값).Facebook 개체 API를 사용하여 비표준 개체 속성을 만들 수 없습니다.
그러나 개체를 만들려고 할 때 개체 브라우저, 그래프 API 탐색기 또는 개체 목록의 응답에서 '데이터'필드를 볼 수 없습니다.
버그입니까? 내가 객체를 생성하는 방법
(방법 1) : 객체를 생성
NSMutableDictionary<FBOpenGraphObject> *object = [FBGraphObject openGraphObjectForPost];
object.provisionedForPost = YES;
object[@"type"] = @"mangasendalpha:Template";
object[@"title"] = @"another one!";
object[@"image"] = @"http://upload.wikimedia.org/wikipedia/commons/thumb/2/23/Enchiladas_suizas.jpg/800px-Enchiladas_suizas.jpg";
object[@"url"] = @"https://url.com";
NSDictionary *data = @{@"keyword":@"haha"};
object[@"data"] = data;
[FBRequestConnection startForPostOpenGraphObject:object
completionHandler:^(FBRequestConnection *connection, id result, NSError *error) {
if(error) {
NSLog(@"Error: %@", error);
} else {
NSLog(@"Success %@", result);
[self tryList];
}
}];
(방법 2) :
NSString *type = @"mangasendalpha:Template";
NSString *title = @"hei hei can you see the data?";
NSString *imageUri = @"http://upload.wikimedia.org/wikipedia/commons/thumb/2/23/Enchiladas_suizas.jpg/800px-Enchiladas_suizas.jpg";
NSString *url = @"http://www.url.com";
NSString *description = @"a new template description";
NSDictionary *objectProperties = @{@"keyword":@"hehe"};
FBRequestConnection *connection = [[FBRequestConnection alloc] init];
FBRequest *request = [FBRequest requestForPostOpenGraphObjectWithType:type title:title image:imageUri url:url description:description objectProperties:objectProperties];
[connection addRequest:request completionHandler:^(FBRequestConnection *connection, id result, NSError *error) {
if(error)
{
LogError(@"%@",error);
}
else
{
Log(@"success:%@", result);
[self tryList];
}
}];
[connection start];
는 상관없이 내가 객체를 생성하는 방법, 내가 제목을 볼 수 있습니다, 이미지 등을 정확하게 입력해야합니다. "keywords = haha"라고 입력해야합니다.
이
그래프 API를 탐색기에서 응답의 예입니다{
"id": "106170429585804",
"url": "http://www.url.com/",
"type": "mangasendalpha:template",
"title": "hei hei can you see the data?",
"image": [
{
"url": "http://upload.wikimedia.org/wikipedia/commons/thumb/2/23/Enchiladas_suizas.jpg/800px-Enchiladas_suizas.jpg"
}
],
"description": "a new template description",
"updated_time": "2013-04-25T16:55:48+0000",
"created_time": "2013-01-09T05:51:44+0000",
"application": {
"id": "512497238785794",
"name": "MangaSendAlpha",
"url": "https://www.facebook.com/apps/application.php?id=512497238785794"
},
"is_scraped": false,
"post_action_id": 524865977555471
}
내가 명시 적으로 내가 아이디, 이미지 및 DATA 원하는 말, 오브젝트를 나열하려고하면 :
- (void) tryList
{
NSString *path = [NSString stringWithFormat:@"/me/objects/mangasendalpha:Template?fields=id,image,data"];
NSDictionary *parameters = nil;
FBRequest *request = [FBRequest requestWithGraphPath:path parameters:parameters HTTPMethod:@"GET"];
[request startWithCompletionHandler:
^(FBRequestConnection *connection,
NSDictionary<FBGraphObject> *response,
NSError *error)
{
if (!error)
{
Log(@"response: %@", response);
}
else
{
Log(@"has error: %@", error);
}
}];
}
이가 내가 무엇을 얻을지 :
data = (
{
id = 106170429585804;
image = (
{
url = "http://upload.wikimedia.org/wikipedia/commons/thumb/2/23/Enchiladas_suizas.jpg/800px-Enchiladas_suizas.jpg";
}
);
},
{
id = 386877688092664;
image = (
{
url = "http://upload.wikimedia.org/wikipedia/commons/thumb/2/23/Enchiladas_suizas.jpg/800px-Enchiladas_suizas.jpg";
}
);
},...
데이터 필드는 어디입니까?