我将消息发布到我的页面墙的常用方法如下:
$args = array(
'access_token' => $page_access_token,
'message' => $title,
'link' => $link,
'name' => 'This is title',
'description' => 'This is a testing of the posting on page',
//'picture' => 'http://www.example.com/directory/images/30.jpg'
);
$post_id = $facebook->api("/$pageId/feed","post",$args);
但是如何将图像发布到我的墙上 - 替代:点击上传按钮,选择图像 - >并上传,图片在墙上。
我的FTP上有一些图像,我想将这些图像上传到我的墙上。
提前致谢
答案 0 :(得分:4)
https://developers.facebook.com/blog/post/498/此链接可以帮助您...
以下是使用Graph API上传照片的各种方法。这些示例假设您已实例化$ facebook对象并具有有效会话。
1 - 当前用户的默认应用程序专辑 此示例将照片上传到当前用户的默认应用程序相册。如果相册尚不存在,则会创建。
$facebook->setFileUploadSupport(true);
$args = array('message' => 'Photo Caption');
$args['image'] = '@' . realpath($FILE_PATH);
$data = $facebook->api('/me/photos', 'post', $args);
print_r($data);
2 - 目标专辑
此示例将照片上传到特定相册。
$facebook->setFileUploadSupport(true);
$args = array('message' => 'Photo Caption');
$args['image'] = '@' . realpath($FILE_PATH);
$data = $facebook->api('/'. $ALBUM_ID . '/photos', 'post', $args);
print_r($data);
答案 1 :(得分:0)
我没有使用Facebook API包含,因此我尝试将仅使用curl请求的Facebook内容直接集成到Graph API URL。
因此,要在用户的墙上发布图片,我找到的最简单的方法就是指出图片网址。
<?php
$url = "https://graph.facebook.com/me/photos?access_token=" . $FacebookToken;
$url = $url . "&url=" . urlencode("http://www.url.to/the/image.jpg");
$url = $url . "&message=" . urlencode($Description);
$url = $url . "&method=POST";
$data = file_get_contents($url); // Can change to curl if
// file_get_contents is blocked on your host
?>
答案 2 :(得分:-1)
这是一个简短的例子,从我的代码中恢复过来:
$fbPost = curl_init();
curl_setopt($fbPost, CURLOPT_RETURNTRANSFER, true);
curl_setopt($fbPost, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($fbPost, CURLOPT_SSL_VERIFYHOST, 2);
curl_setopt($fbPost, CURLOPT_POST, true);
curl_setopt($fbPost, CURLOPT_ENCODING, 'gzip');
$photoInfo = array(
'access_token' => <USER_ACCESS_TOKEN>,
'name' => <IMAGE_DESCRIPTION>,
'url' => <ABSOLUTE_URL>/images/photo.jpg',
);
curl_setopt($fbPost, CURLOPT_URL, 'https://graph.facebook.com/<USER_ID>/photos');
curl_setopt($fbPost, CURLOPT_POSTFIELDS, $photoInfo);
$result = json_decode(curl_exec($fbPost), true);
curl_close($fbPost);