从Facebook Developer文档中,我发现了这一点
“您可以使用两种方法指定要标记的用户:在URL路径中为PHOTO_ID/tags/USER_ID
,或在URL参数中为PHOTO_ID/tags?to=USER_ID
。要一次添加多个标记,您可以指定包含的tags属性一系列标记,例如PHOTO_ID/tags?tags=[{"id":"1234"}, {"id":"12345"}]
。目前,您无法使用此API标记照片中的页面。“
这是我的代码。
NSString *photoID = @"267766096670674";
[self.facebook requestWithGraphPath:[NSString stringWithFormat:@"%@/tags?tags=[{\"id\":\"%@\"},{\"id\":\"%@\"}]?access_token=%@", photoID, @"100001965796318", @"100004119154586", self.facebook.accessToken]
andParams:nil
andHttpMethod:@"POST" andDelegate:self];
我得到如下错误 “错误消息:错误域= NSURLErrorDomain代码= -1000”错误的URL“UserInfo = 0x3f55a0 {NSUnderlyingError = 0x3f5c10”错误的URL“,NSLocalizedDescription =错误的URL}”
由于该文件,标记一个朋友是好的。但为什么我不能一次标记几个朋友呢?
答案 0 :(得分:0)
api中的键应该是'tag_uid'而不是'to'。 因此API应该是:
?PHOTO_ID /标签标记= [{ “tag_uid”: “1111111111111”},{ “tag_uid”: “222222222”}]
答案 1 :(得分:0)
非常感谢。它解决了使用Facebook API Explorer时的问题。但我将参数复制到XCode,如下所示
NSString *testString = @"267766096670674/tags?tags=[{\"tag_uid\":\"100001965796318\"},{\"tag_uid\":\"100004119154586\"}]&access_token=BAAC3gS8qGCUBADoG8Rvh1jAfWJQmAW6BenV6KXkcQThKquvav7v1eSZB4MxHefH3hwt6JHd44Rz9FWhXVCNZAAmUGzVz6OcaKvxUZA0tCDlKU9Wj7o0hQo8eB7GgdoXaWrkx79oRzqKyjF7O9cX";
NSLog(@"%@", testString);
[self.facebook requestWithGraphPath:testString
andParams:nil
andHttpMethod:@"POST" andDelegate:self];
它不起作用。但它适用于Graph API Explorer工具,我不知道为什么。