【问题标题】:Post on a Facebook page wall as Page name from Application作为应用程序中的页面名称在 Facebook 页面墙上发布
【发布时间】:2012-02-10 13:46:04
【问题描述】:

所有, 我有一个页面,我是 Facebook 上的管理员,我也有一个页面的应用程序。我试图让我的应用程序将离线消息发布到我的墙上,因为我不知道如何为我的应用程序提供执行此操作所需的权限。我确实找到了以下网址:

https://www.facebook.com/dialog/oauth?client_id=$id&client_secret=$secret&redirect_uri=$uri&scope=publish_stream,offline_access,read_stream,manage_pages&response_type=token

我可以直接把它放到我的浏览器中吗?我更新了 ID 和秘密,但我也不确定要在 uri 中添加什么?这是否给了我一个我可以一直使用的永久令牌?

非常感谢您能给我的任何帮助。

谢谢!

【问题讨论】:

    标签: php facebook facebook-graph-api


    【解决方案1】:

    您需要获取应用程序访问令牌才能作为应用程序发布。您将需要查询 Graph API 的 me/accounts 并在该列表中找到该应用程序。您还将看到分配给该应用程序的不同访问令牌。然后,您可以使用该令牌作为该应用发布。

    另请参阅:Post to Facebook application page as APPLICATION user 请记住页面和应用程序在 me/accounts 下属于同一类别

    $result = $facebook->api("/me/accounts");
    foreach($result["data"] as $page) {
        if($page["id"] == $page_id) {
            $page_access_token = $page["access_token"];
            break;
        }
    }
    $args = array(
        'access_token'  => $page_access_token,
        'message'       => "I'm a Page!"
    );
    $post_id = $facebook->api("/$page_id/feed","post",$args);
    

    【讨论】:

    • 感谢您的信息。如果我获得访问令牌,那么我是否有正确的权限发布到该页面?
    • 你用来获取me/accounts的页面管理员的访问令牌需要有publish_stream
    • 如果它没有 publish_stream 我如何确保我给应用程序正确的权限?
    • 当您要求管理员对您的应用进行身份验证时,请确保您要求管理员提供这些权限。如果你不知道他有什么,你可以打电话给developers.facebook.com/docs/reference/api/permissions 看看他有什么访问令牌。如果他遗漏了任何内容,请让他使用正确的“范围”(又称权限列表)登录
    猜你喜欢
    • 2012-06-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-11-27
    • 1970-01-01
    • 1970-01-01
    • 2012-10-25
    相关资源
    最近更新 更多