错误:在尝试在用户提要中发布时,需要用户访问令牌来请求此资源


Error: A user access token is required to request this resource, while trying to post in user feed

问题- 1

我想在用户的墙上张贴,但我有时得到:用户访问令牌需要请求此资源。

这是我做的:

$access_token = $facebook->getAccessToken();
$facebook->setAccessToken($access_token);

$params = array(
                'access_token'  =>  $access_token,
                'link'          =>  "http://www.facebook.com/PaginaRomanilor?sk=app_".APP_ID,
                'message'       =>  $caption." - Amuză-ți și tu prietenii cu aplicația întrebări pentru prieteni.",
                'name'          =>  $caption,
                'description'   =>  'Răspuns: '.ucfirst($raspuns).'. '.$mesaj,
                'caption'       =>  'TS',
                'picture'       =>  LINK."images/".$raspuns.".png",
                'tags'          => $friendpost['uid'],
                'place'         => 155021662189
            );
        if(!($sendMessage = $facebook->api('/me/feed/','post',$params))){
            $errors= error_get_last();
            echo "Facebook publish error: ".$errors['type'];
            echo "<br />'n".$errors['message'];
        }

当我个人使用应用程序时,我没有得到错误,只有一些用户得到错误。

问题2

在链接中,我提供了到我的页面的链接。标题被忽略,并被Page: 7,726替换,如下所示。

但是我想在那篇文章中给出自定义的标题。

更新:

用户访问令牌错误不是来自这部分代码,而是来自选择朋友数据库,所以我在那里解决了,我现在遇到的问题是我的自定义标题禁用并替换为来自链接的页面的喜欢。

当用户登录到应用程序并授权其执行特定任务时,您将获得一个用户访问令牌。您还可以像这样请求扩展访问令牌:-

$facebook->setExtendedAccessToken();

在用户不在时代表用户完成任务。

关于你的第二个问题,有一些关于Facebook如何解析传递给它的链接的特殊问题。每当它是一个URL从Facebook的域它覆盖一些参数,禁用一些参数,并增加一些值。这就是页面选项卡应用程序链接的情况,它从他们所在的页面获得喜欢计数。

有一种方法可以让你得到你喜欢的结果,那就是使用任何URL缩短服务来缩短URL,比如bit.ly