2

我使用此代码,但出现错误

致命错误:未捕获的 OAuthException:(#121)在第 1106 行的 /home/a283357/public_html/app/base_facebook.php 中抛出了无效的照片 ID

我的代码用于标签

$data = array(array('tag_uid' => $friends, 'x' => rand() % 100, 'y' => rand() % 100 ));
$data = json_encode($data);
//, 'tags' => $data,


$photo_details = array( 'message'=> 'message ', 'tags' => $data, 'image' => '@' . realpath($file) );
$upload_photo = $facebook->api('/'.$album_uid.'/photos', 'post', $photo_details);

我想标记 5 或 10 个朋友

4

1 回答 1

2

您不能在创建照片时指定照片的标签。此外,您为创建照片方法中使用的参数使用了错误的名称。

您应该先创建照片,然后对其进行标记。

创建照片:

$photo_details = array(
  'message'=> 'message ',
  'source' => '@' . realpath($file)
);
$uploaded_photo = $facebook->api('/'.$album_uid.'/photos', 'post', $photo_details);

现在标记它:

$tags = array(
  array('tag_uid' => $friend_id, 'x' => rand() % 100, 'y' => rand() % 100 )
);
$photo_id = $uploaded_photo['id'];
$facebook->api('/'.$photo_id.'/tags', 'post', array('tags'=>$tags));

请注意, 文档将to参数声明为指定标记用户的参数,但事实并非如此(tag_uid与您的初始示例一样)。

于 2012-04-11T15:17:09.313 回答