You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过php-graph-sdk指定发帖的Facebook主页及查询接口文档

问题1:持有page-access-token但无page-id时指定目标发布主页的方案
  • 你不需要提前手动记录page-id,Graph API里的/me端点会自动识别当前传入access token对应的主体身份:如果传入的是主页access token,/me直接返回该主页的信息;如果传入的是用户access token,/me返回当前授权用户的信息。
  • 先验证你手里的token对应的主体,直接跑下面的代码就能拿到对应page-id:
try {
  // 传入你持有的access-token,拉取当前token绑定主体的基础信息
  $response = $fb->get('/me?fields=id,name', '{your-access-token}');
  $entityInfo = $response->getGraphNode()->asArray();
  // 如果传入的是page-access-token,$entityInfo['id']就是对应主页的page-id
  $targetPageId = $entityInfo['id'];
} catch(Facebook\Exceptions\FacebookResponseException $e) {
  echo 'Graph接口返回错误: ' . $e->getMessage();
  exit;
} catch(Facebook\Exceptions\FacebookSDKException $e) {
  echo 'SDK返回错误: ' . $e->getMessage();
  exit;
}
  • 如果你需要列出自己名下所有具备管理员权限的主页、对应page-id和专属page-access-token,给你的用户access token开通pages_manage_posts、pages_show_list权限后,调用/me/accounts接口即可,返回结果会包含所有你有权限管理的主页的id、名称、page-access-token,你要发哪个主页直接取对应条目里的id和token即可。
  • 实际发帖时,只要你传入的是对应主页的page-access-token,直接调用/me/feed端点就可以把内容发布到该主页,不需要手动在请求路径里拼接page-id,官方示例里写/me/feed就是基于这个逻辑。

注意:你当前示例代码中配置的Graph API版本v2.10已经完全下线,初始化SDK的时候请把default_graph_version替换成当前在用的稳定版本,否则会报版本废弃错误。

问题2:不同内容类型发帖参数的完整说明获取渠道
  • 所有发帖相关的参数规则、支持的内容类型,不需要靠零散示例摸索,全部统一在Meta官方开发者平台的Graph API参考文档中,对应「Page」节点下的feed边接口说明,常见内容类型的参数规则可以先参考:
    • 纯文本发帖:仅需传入message字段填写正文内容即可
    • 外链分享帖:除message外,传入link字段填写跳转链接,可额外选填name(自定义链接标题)、caption(链接副标题)、description(链接描述文本)、picture(自定义分享封面图URL)字段
    • 图片/视频帖:不能直接在feed接口传文件,需要先调用对应主页的/photos或/videos端点上传素材拿到素材id,再把素材id传入feed接口的object_attachment字段完成发布;也可以在上传素材时直接加published=true参数,上传完成后自动发布到主页信息流
    • 特殊内容类型(快拍、活动帖、商品帖等):对应Page节点下的专属接口,参数规则同样在同一套官方参考文档中可以查到,不需要参考第三方零散示例。

内容的提问来源于stack exchange,提问作者Gustavo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.30 11:15:30