FaceBook PHP API SDK:突然参数 'link' 没有发布并且 /me/feed 不工作

FaceBook PHP API SDK: suddenly the argument 'link' is not published and /me/feed is not working

我完成了这个脚本,直到今天早上都运行良好,当启动它时,突然我注意到数组 $linkData 的参数 "link" 不再发布,(没有返回错误)而 "message" 已发布。

我还注意到,如果我将 /me/feed 放入对象 $fb->post 中,它不起作用(请参阅注释行)。没有返回错误。

虽然,如果我放一个组的代码(你看到的代码是我创建的测试脚本的测试组),参数"message"被发布(而不是"link"

范围是:

user_managed_groups,
user_events,
user_friends,
user_posts,
publish_actions,
user_actions.music,
user_actions.video,
public_profile

link 指的是 link 为其编写的应用程序。 www.example.com URL,是为这个例子写在这里的。在实际代码中,我使用应用程序站点的 URL(直到昨天工作正常)。

请输入代码:

<?php
session_start();

define(__APP_ID__, XXXXXXXXXXXXXXX);
define(__APP_SECRET__, 'YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY');
define(__APP_TOKEN__, 'ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ');
define(__APP_ACCESS_TOKEN__, 'WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW');

require_once '../include/setup.php';
require_once $root_dir.'/include/Facebook/autoload.php';

// Creates the object
$fb = new Facebook\Facebook([
    'app_id' => __APP_ID__,
    'app_secret' => __APP_SECRET__,
    'default_graph_version' => 'v2.2',
]);

$linkData = [
    'link' => 'http://www.example.com',
    'message' => 'The link above, is not any longer published',
];

$group_id = "1041863359178529";

        try {

            //$response = $fb->post("/me/feed", $linkData, __APP_ACCESS_TOKEN__); // SUDDENLY it doesn't work any longer
            $response = $fb->post("/{$group_id}/feed", $linkData, __APP_ACCESS_TOKEN__);

            } catch  (Facebook\Exceptions\FacebookResponseException $e) {
                echo 'Graph returned an error: ' . $e->getMessage();
                exit;
            } catch (Facebook\Exceptions\FacebookSDKException $e) {
                echo 'Facebook SDK returned an error: ' . $e->getMessage();
                exit;
            }

        $graphNode = $response->getGraphNode();
        echo 'Posted with id: ' . $graphNode['id']."\r\n";

?>

编辑: 有什么我可以做的吗? id 是否取决于 App 设置?我更改了许多参数以找到解决方案,但我仍然遇到问题。

我确实验证了该块是由于 FB。 换句话说:可能出于安全原因(主要是反垃圾邮件),FB 会在短时间内阻止重复使用该功能。

我也尝试过在迭代中等待超过15秒,但是如果我一天使用它超过20-25次,FB会暂停所有需要的授权。

当时我post 线程,FB 只启用了文本的 post,并停用了 OpenGraph。

现在,它会阻止任何类型的发送,包括文本。