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


Post on Facebook without Share Prompt in PHP

我是否可以制作一个按钮,当我点击该按钮时,内容将直接在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)用户未授权应用程序在文件中执行此操作"如有任何帮助,我们将不胜感激。

提前谢谢。

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

了解有关通过Graph API发布提要的更多信息,以及此处提供的所有参数。

所需权限: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);

您可以在此处阅读有关权限的更多信息。

试试这种方法:https://developers.facebook.com/docs/reference/php/在对wep应用程序进行编码时,您只需要提供应用程序Id和应用程序密钥,然后您就必须指定要发布的内容。你也应该试试Javascript Facebook SDK,你会在这里找到它:https://developers.facebook.com/docs/javascript或者你可以更进一步,尝试一下C#SDK,这个有点复杂,但你可以做得更多。编码玩得开心!!!

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

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

这是一个很长的过程,所以你需要研究一下。