facebook php api参数“地方”必须是有效的地方标签ID

时间:2019-03-16 21:07:41

标签: php api facebook-graph-api tags

问题与在通过Facebook api上传的视频中标记其他页面有关

我正在尝试通过php API创建一个Facebook帖子。我可以上传视频或照片,但是当我想在帖子中“标记”(相当于“ with”)时,我无法进行...

我可以通过

获取地点ID
  

https://graph.facebook.com/search?q=name_of_place_&type=place&access_token=token

$videoData = array( 'description' => $facebook_caption, 
                        'source' => $fb->videoToUpload($media_path) , 
                        'title' => $facebook_title,
                        'place' => ['id'=>'place_ID','name'=>'placeName'],
                        'tags' => 'facebookpageuser1,facebookpageuser2'
                       );
    $response = @$fb->post('/me/videos',$videoData,$pageAccessToken);
    $graphNode = $response->getGraphNode(); 

我收到一个错误:“ Param地点必须是有效的地点标签ID”

  

致命错误:未被发现   Facebook \ Exceptions \ FacebookAuthenticationException:(#100)参数   地点必须是有效的地点标签ID   ... /供应商/facebook/graph-sdk/src/Facebook/Exceptions/FacebookResponseException.php   在第115行

有人知道如何添加“有效的年龄ID”吗?

谢谢

1 个答案:

答案 0 :(得分:0)

Place标签没有 name 参数。请参见文档:Place Tag 但是根据文档,post方法使用一个引用Place的参数。在那里,出现此参数-Place 另外请注意,正确的标识符是数字字符串。

解决方案1,尝试不使用name参数。也许是文档中的错误。

'place' => ['id'=>'place_ID'],

解决方案2,我不确定参数是否应为数组(文档未显示此信息)。因此,如果解决方案1不起作用,请尝试使用json:

'place' => json_encode(['id'=>'place_ID']),