【问题标题】:How to tag several friends in a photo using Facebook iOS SDK如何使用 Facebook iOS SDK 在一张照片中标记多个朋友
【发布时间】:2012-08-09 09:48:59
【问题描述】:

从 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}"

由于文件原因,标记一位朋友即可。但是为什么我不能同时标记几个朋友呢?

【问题讨论】:

  • 不确定这是否是问题的一部分,但您在那里构建的查询字符串是错误的 - 您在参数名称 access_token 之前有一个 ?,它应该是一个 @ 987654328@。如果解决此问题并不能解决问题,请尝试对 tags 参数的值进行正确的 URL 编码。
  • 非常感谢。但是我用'&'代替'?',这并不能解决问题。而且我真的不明白“URL - 正确编码标签参数的值”,你能给我举个例子吗?
  • google.com/search?q=what+is+url+encoding 关于如何用您使用的语言进行操作,请自行研究。
  • 非常感谢。我使用“tag_uid”替换“id”并对url进行编码,所以它可以工作!我发现\"不能直接在url中使用。

标签: ios facebook sdk tags


【解决方案1】:

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

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

【讨论】:

  • 非常感谢。它解决了使用 Facebook API Explorer 时的问题。但我将参数复制到 XCode,如下所示
【解决方案2】:

非常感谢。它解决了使用 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,我不知道为什么。

【讨论】:

  • 请编辑您的问题以更新您的进度,而不是发布答案。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-10-06
  • 2014-04-09
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多