Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/245.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/128.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
要发布到我的页面的PHP文件_Php_Facebook_Facebook Php Sdk - Fatal编程技术网

要发布到我的页面的PHP文件

要发布到我的页面的PHP文件,php,facebook,facebook-php-sdk,Php,Facebook,Facebook Php Sdk,我有一个脚本,可以将我们网站的更新发布到我们的facebook页面。我为此创建了一个API,获得了所有的应用程序id等等,并在facebook页面上添加了我的facebook个人资料作为管理员,同时在应用程序上添加了经理角色 我读到,如果你不在任何地方发布应用程序,没有必要让FaceBook审查该应用程序。这不是一个其他人可以用来发布内容的网站,它只是一个允许我们在facebook页面上发布更新的管理工具 我在删除此代码ID的情况下发布运行我的测试发布: $fb = new \Facebook\

我有一个脚本,可以将我们网站的更新发布到我们的facebook页面。我为此创建了一个API,获得了所有的应用程序id等等,并在facebook页面上添加了我的facebook个人资料作为管理员,同时在应用程序上添加了经理角色

我读到,如果你不在任何地方发布应用程序,没有必要让FaceBook审查该应用程序。这不是一个其他人可以用来发布内容的网站,它只是一个允许我们在facebook页面上发布更新的管理工具

我在删除此代码ID的情况下发布运行我的测试发布:

$fb = new \Facebook\Facebook( [
  'app_id'                => APP_ID,    
  'app_secret'            => APP_SECRET,
  'default_graph_version' => 'v2.2',
  'default_access_token'  => DEFAULT_ACCESS_TOKEN
] );


$attachment = [
    'message' => 'this is a test message',
];

try{
    $result = $fb->post( '419661214806422/feed', $attachment );
} catch( Exception $e ){
    echo "<pre>" . print_r( $e, true ) . "</pre>";
}

这给了我一条错误消息:200需要发布\u操作权限,或者管理\u页面并以具有足够管理权限的管理员身份发布\u页面。但我不知道在哪里编辑我的权限。我的帐户是facebook页面的管理员,它也被添加为我正在编写的应用程序的管理员。我整个下午都在网上搜索,但我只能找到关于实际对公众开放的应用程序的信息,这是我不需要的。因此,我也无法提供facebook的链接进行查看,因为这是我们管理员的一部分。

您从哪里获得默认访问令牌?您可以在这里调试您的令牌。它会告诉你你拥有的权限。在身份验证过程中,您需要向您的应用程序授予这些权限才能发布。

我从位于的facebook API资源管理器获得的if将为我创建的API提供一个访问令牌。因此,当您在该页面上时,在将令牌复制到您面前之前,请单击右侧的“获取令牌”选项。然后单击获取用户访问令牌。当您获得要请求的权限列表时,请确保选择“管理页面”和“发布页面”权限。然后,将通过身份验证流提示您接受这些权限。之后,再次单击下拉列表,这一次您将看到您有权访问的页面列表。选择您的一个,您将获得该页面访问令牌以便发布。然后我建议,在获取该令牌后,再次访问并粘贴到您的新令牌中。它将为您提供有关它的信息,但也将为您提供扩展令牌的能力,这将为您提供一个持续时间远远超过一小时的新令牌。我从Facebook获得了以下反馈:您的应用不需要提交管理页面或发布页面来发布到您管理的页面或博客。作为应用程序管理员,您已经可以访问这些权限并发布到自己的时间线、页面和组。您可以通过将其他用户作为管理员或开发人员添加到您的应用程序来提供对他们的访问。如果您的应用程序使用第三方用户将从外部访问的面向公众的登录名,则仅申请管理页面或发布页面。结果表明,您需要该页面的AccessToken,而不是在处找到的应用程序的AccessToken。然后使用发布页面和管理页面授权您的应用程序,如错误消息中所述。此外,请确保在api explorer中选择应用程序,而不是默认的api explorer应用程序。