Php 使用curl从网站发布到facebook页面

Php 使用curl从网站发布到facebook页面,php,facebook,facebook-graph-api,curl,Php,Facebook,Facebook Graph Api,Curl,我正在尝试构建一个脚本,当一个按钮被提交时,它会将数据发布到facebook页面 我创建了一个不过期的页面访问令牌,但我一直在研究如何构建url。graph api explorer中的几项测试一直在告诉我: { "error": { "message": "(#200) The user hasn't authorized the application to perform this action", "type": "OAuthExceptio

我正在尝试构建一个脚本,当一个按钮被提交时,它会将数据发布到facebook页面

我创建了一个不过期的页面访问令牌,但我一直在研究如何构建url。graph api explorer中的几项测试一直在告诉我:

 {
      "error": {
        "message": "(#200) The user hasn't authorized the application to perform this action",
        "type": "OAuthException",
        "code": 200,
        "fbtrace_id": "BYNmxVAlESA"
      }
    }
我试过这样的方法:

1745650152362669/feed?消息=消息和访问\u令牌=myaccesstoken

1745650152362669/feed?字段=消息=消息和访问\u令牌=myaccesstoken

当然,这两个都是
POST

而我确实给了我的应用程序权限

就像你在这里看到的:

此令牌在一小时后过期,因此我按“在访问令牌池中打开”

然后单击扩展访问令牌:

我在graph api资源管理器中再次粘贴该标记,但现在不再选择该页面:

是不是应该这样

我有以下代码,应该在提交时执行帖子:

<form>
    <input type="submit" name="submit">
</form>
<?

if(isset($_POST['submit'])){
    $token = 'mypageaccestoken';

    $attachment =  array(
    'access_token' => $token,
    'message' => $contentcr[0]['introtext'],
    'name' => $contentcr[0]['title'],
    'link' => $contentcr[0]['alias'].'html',
    'actions' => json_encode(array('name' => $action_name,'link' => $action_link))
    );

    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL,'https://graph.facebook.com/1745650152362669/feed');
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 2);
    curl_setopt($ch, CURLOPT_POST, true);
    curl_setopt($ch, CURLOPT_POSTFIELDS, $attachment);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    $result = curl_exec($ch);
    curl_close ($ch);
}

用户尚未授权应用程序执行此操作


该错误意味着您缺少相应的权限。您需要
发布页面
才能发布(作为页面),而不仅仅是
管理页面

您缺少发布权限@CBroe谢谢你,这很有效!好的,有道理,我在哪里可以添加更多权限?创建页面访问令牌时,我只有允许或拒绝的选项,没有任何特定的权限。编辑:没关系,我看到在我的appname下的dropdownlist中有一个按钮。当生成用户令牌时,你也可以管理页面。只需另外选择publish_pages。是的,甚至还有一个单独的功能来授权publish_pages