我从脸谱图api得到了意想不到的行为。我通过cURL代表页面发帖,帖子显示在页面上,但是链接格式显示了facebook网址,例如https://graph.facebook.com/v2.1/507522299329185/feed,而不是提供的实际网站链接,例如http://ameboapp.com/2fh2s ...
这是用于发布页面访问令牌的函数。
public function postLink($title, $url, $caption, $description, $message, $image_url) {
$url = 'https://graph.facebook.com/v2.1/' . $this->page_id . '/feed';
$fields_string = '';
$fields = array(
'access_token' => $this->page_token,
'link' => $url,
'picture' => $image_url,
'name' => $title,
'caption' => $caption,
'description' => $description,
'message' => $message,
);
//url-ify the data for the POST
foreach ($fields as $key => $value) {
$fields_string .= $key . '=' . $value . '&';
}
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_VERBOSE, 1);
curl_setopt($curl, CURLOPT_HEADER, false);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLINFO_HEADER_OUT, 1);
curl_setopt($curl, CURLOPT_POST, true);
curl_setopt($curl, CURLOPT_POSTFIELDS, $fields_string);
$response = curl_exec($curl);
return $response;
}
访问图表链接时,会显示此错误“”需要访问令牌才能请求此资源。“
任何人都可以帮助辨别正在发生的事情以及如何解决问题吗?谢谢。实际页面位于:https://www.facebook.com/ameboapp
答案 0 :(得分:1)
您正在将$url
设置为图谱API调用:
$url = 'https://graph.facebook.com/v2.1/' . $this->page_id . '/feed';
但你也在帖子中使用同一个变量:
'link' => $url,
您应该在帖子中为'link'
添加第二个网址,即您想要的网址。现在你只是将API调用作为帖子的链接发布,这将永远不会起作用。