1

从 Facebook 开发人员文档中,我发现“您可以使用两种方法指定要标记的用户:在 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 Code=-1000“错误 URL”UserInfo=0x3f55a0 {NSUnderlyingError=0x3f5c10“错误 URL”,NSLocalizedDescription=错误 URL}”

由于文档,标记一个朋友是可以的。但是为什么我不能同时标记几个朋友呢?

4

2 回答 2

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 Tool,我不知道为什么。

于 2012-08-10T02:07:03.370 回答
0

api 中的键应该是 'tag_uid' 而不是 'to'。因此 API 应该是:

PHOTO_ID/tags?tags=[{"tag_uid":"1111111111111"},{"tag_uid":"222222222"}]

于 2012-08-09T12:44:33.950 回答