如何使用Facebook Graph API在照片中标记用户?
问题描述:
我想:如何使用Facebook Graph API在照片中标记用户?
$args = array(
'access_token' => $access_token,
'id' => $uid
);
$url = "https://graph.facebook.com/{$idPhoto}/tags";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HEADER, false);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $args);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 2);
$data = curl_exec($ch);
这又回到了我:
{"error":{"type":"QueryParseException","message":"Unknown path components: \/tags"}}
这似乎并不可能,因为它不是Facebook的文件中:
http://developers.facebook.com/docs/api#publishing
有人可以证实我在最近上传的照片中无法标记用户?
答
目前没有用Facebook Graph API设置标签的机制。
您可以使用photos.addTag与旧的REST API,您应该可以在这里下载:http://pearhub.org/get/facebook-0.1.0.tgz。如果有人有更好的链接,我将不胜感激。
从Facebook开发人员看这篇文章http://developers.facebook.com/blog/post/371新的API似乎不会支持设置标签“让用户进行标记”。这对于想要集成标记的应用程序(如我的)来说是不幸的。
答
的URL更改为
$url = "https://graph.facebook.com/{$idPhoto}/photos";
tags
是不兼容的方法!使用photo
来检索指定的数据
看看!
http://developers.facebook.com/docs/reference/api/photo用于标记照片中的用户。
答
上传图像和标记多个人在一个步骤中使用PHP的Facebook图形API:
$args = array(
'message' => 'Message',
'image' => '@' . realpath($path_to_image),
'tags' => array(
array(
'tag_uid'=> $friend1_uid,
'x' => $x1,
'y' => $y1,
),
array(
'tag_uid' => $friend2_uid,
'x' => $x2,
'y' => $y2,
),/*...*/
),
);
$data = $facebook->api('/me/photos', 'post', $args);
其中$ Facebook是Facebook的初始化PHP SDK对象。 $ data ['id']是上传照片的ID。
注: 1.文件上传选项被设置时初始化的Facebook对象:
$facebook = new Facebook(array(
/*..*/
'fileUpload' => true,
));
开始=>
对不起,但在你的链接没有任何关于标签的人。我不需要检索数据,但要发布它。 – FR6 2010-06-10 20:27:20