Facebook &引用;未捕获的OAutheException:发生未知错误;在试图制作墙柱时

Facebook &引用;未捕获的OAutheException:发生未知错误;在试图制作墙柱时,facebook,facebook-graph-api,exception,Facebook,Facebook Graph Api,Exception,我正在使用以下脚本将链接发布到Facebook页面的墙: ini_set("zend.ze1_compatibility_mode", "off"); require_once('facebook-php-sdk/src/facebook.php'); $appId = 'XXXXXXXXXXXXXX'; $secret = 'XXXXXXXXXXXXXXXXXXXXXXXXXXXX'; $facebook = new Facebook(array('appId' => $appId, '

我正在使用以下脚本将链接发布到Facebook页面的墙:

ini_set("zend.ze1_compatibility_mode", "off");
require_once('facebook-php-sdk/src/facebook.php');
$appId = 'XXXXXXXXXXXXXX';
$secret = 'XXXXXXXXXXXXXXXXXXXXXXXXXXXX';
$facebook = new Facebook(array('appId' => $appId, 'secret' => $secret));
$access_token = file_get_contents('https://graph.facebook.com/oauth/access_token?client_id='.$appId.'&client_secret='.$secret.'&grant_type=client_credentials');
$access_token = preg_replace('/^access_token=/', '', $access_token);
$attachment = array(
    'access_token' => $access_token,
    'message' => 'message text',
    'link' => 'http://www.domain.com/',
    'name' => utf8_encode('link title'),
    'description' => utf8_encode('link description'),
    'picture' => 'http://www.domain.com/images/picture.jpg'
);
$facebook->api('/XXXXXXXXXXXX/feed', 'POST', $attachment);
它工作得很好,但从2周起,它开始出现以下错误,但绝对没有进行任何修改:

Fatal error:  Uncaught OAuthException: An unknown error has occurred.
thrown in /path/to/public_html/facebook-php-sdk/src/base_facebook.php on line 1033
通过一些基本的调试,我发现如果我注释掉
$attachment
数组的
link
元素,问题就解决了。然而,Facebook页面上的
name
开始链接到图片文件,这绝对不是一个选项

我们将非常感谢您的帮助

更新:

我试图通过Graph API Explorer执行此请求,但得到了相同的错误:

{
    "error": {
        "message": "An unknown error has occurred.", 
        "type": "OAuthException", 
        "code": 1
    }
}

我也有同样的问题,一个简单的基于网络的程序偶尔会更新我客户的facebook页面,更新他的库存状态

据我所知,无论出于何种原因,这个bug被置于“不会修复”状态,并且所讨论的功能已被弃用

我不知道为什么链接功能会被弃用,我也不知道发布链接的新的正确方法是什么,因为图形文档仍然将“LINK”列为用于发布链接的正确字段。有人吗

在上面的bug页面上,他给出了一个链接,据说该链接提供了更多信息,但该链接不起作用。我以为可能“.intern”部分不应该在那里,给我这个URL

…这确实有效,但我没有看到任何与不推荐的功能相关的信息,或者有助于我确定如何更改代码以发布链接的信息。也许对Graph API更了解的人可以提供帮助


[我真的希望Facebook停止不推荐这些东西;让它继续工作真的会有什么害处吗?他们称之为开发者之爱,但我怎么会喜欢那些无缘无故给我带来额外工作的东西呢?]

你是否尝试过通过浏览器运行你的查询,因为你可能会收到更好的错误消息。确保将其更改为使用您的access_令牌,并将其更改为post hm的请求方法,我如何通过浏览器运行它?我是否将
POST
参数作为
GET
string传递输入Graph API端点地址,从下拉列表中将方法更改为POST,使用“添加字段”为POST参数添加名称/值对…然后单击发送。(尽管我怀疑它是否会给出更有用的错误消息。)你说得对。请参阅更新。尝试通过调试器放置您试图发布的链接,它会抱怨什么吗?当你试图通过facebook.com上的UI直接发布该链接时,会怎么样?是否有关于该域被阻止的消息或其他信息?只是发布了一篇关于此的博客文章()。我想不出一个解决办法。。。你再也不能在facebook帖子中使用“link”参数了。