在Facebook上发布没有PHP的共享提示

时间:2014-04-09 14:50:50

标签: php facebook facebook-graph-api facebook-php-sdk share

我是否有可能制作一个按钮,当我点击时,内容直接在Facebook上共享而不向用户显示共享提示对话框?

我在网上提到它并发现它可以通过移动设备: http://www.mindfiresolutions.com/How-to-post-message-on-your-facebook-wall-without-using-Facebook-dialog-Box-1419.php

问题是我们可以进行某种ajax调用并在Web应用程序上完成此操作。

我们使用以下代码

<?php
require_once('php-sdk/facebook.php');
$config = array(
  'appId' => 'My app ID', /*Your APP ID*/
  'secret' => 'My Secret ID', /*Your APP Secret Key*/
  'allowSignedRequest' => false 
);
$facebook = new Facebook($config);
$user_id = $facebook->getUser();

  if($user_id) {
    try {
      $user_profile = $facebook->api('/me','GET');

    } catch(FacebookApiException $e) {
      $login_url = $facebook->getLoginUrl(); 
      echo 'Please <a href="' . $login_url . '">login.</a>';
      error_log($e->getType());
      error_log($e->getMessage());
    }   
  } else {
    // No user, print a link for the user to login
    $login_url = $facebook->getLoginUrl();
    echo 'Please <a href="' . $login_url . '">login.</a>';
  }


  $response = $facebook->api(
  "/me/feed",
  "POST",
   array (
      'message' => 'This is a test message',
      'link' => 'www.google.com'
     /*        'picture' => '{picture}',
      'caption' => '{caption}',
      'description' => '{description}'*/
  )
);
  ?>

但它的返回:“致命错误:未捕获OAuthException:(#200)用户未授权应用程序执行此操作抛出文件” 任何帮助都将受到高度赞赏。

提前致谢。

3 个答案:

答案 0 :(得分:2)

当然,您可以使用Graph API。点击按钮,您只需\POST拨打/me/feed

详细了解如何通过图谱API发布供稿以及所有可用参数here

需要许可:publish_stream

使用 PHP SDK:

$response = $facebook->api(
    "/me/feed",
    "POST",
    array (
        'message' => 'This is a test message',
        'link' => '{link}',
        'picture' => '{picture}',
        'caption' => '{caption}',
        'description' => '{description}'
    )
);

直接 HTTP 请求 -

POST /me/feed
Host: graph.facebook.com

message=This+is+a+test+message
...

您可以在Graph API Explorer

中查看来电

修改

要求获得所需的权限:

$params = array(
  'scope' => 'publish_stream'
);

$login_url = $facebook->getLoginUrl($params);

您可以阅读有关权限here的更多信息。

答案 1 :(得分:0)

尝试这种方式:https://developers.facebook.com/docs/reference/php/ 在编写wep应用程序时,您只需提供App Id和App Secret,然后您必须指定要发布的内容。 你应该尝试使用Javascript Facebook SDK,你可以在这里找到它:https://developers.facebook.com/docs/javascript或者你可以更进一步尝试C#SDK,这个有点复杂,但是你可以做到这么多更多。 有乐趣编码!!!

答案 2 :(得分:0)

转到https://developers.facebook.com/docs/opengraph/

查看它并放置您想要的分享类型。

这是一个漫长的过程。你需要学习它。