[英]How to use the graph API to upload photos to albums
我的代碼(不起作用):
<?php
require '../src/facebook.php';
$facebook = new Facebook(array(
'appId' => '...',
'secret' => '...'
));
Facebook::$CURL_OPTS[CURLOPT_SSL_VERIFYPEER] = false;
$user = $facebook->getUser();
if ($user) {
try {
$user_profile = $facebook->api('/me');
} catch (FacebookApiException $e) {
error_log($e);
$user = null;
}
}
if ($user) {
$album_id = '246592692052269';
$FILE_PATH = 'Language.jpg';
$access_token = $_SESSION['fb_appId_access_token'];
$logoutUrl = $facebook->getLogoutUrl();
$args = array('image'=> '@' . __DIR__.$FILE_PATH,
'name' => 'this photo was taken in acre',
'message'=> 'Photo Caption');
$ch = curl_init();
$url = 'http://graph.facebook.com/'.$album_id.'/photos?access_token='.$access_token;
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HEADER, false);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $args);
$data = curl_exec($ch);
//returns the photo id
if(empty($data)) {
echo 'Responde: '. $data . '<pre>';
print_r(curl_getinfo($ch));
echo '</pre>';
} else {
echo 'Upload failed! erro='. curl_error($ch);
}
} else {
$loginUrl = $facebook->getLoginUrl();
}
?>
輸出:
Array
(
[url] => http://graph.facebook.com/246592692052269/photos?access_token=...
[content_type] =>
[http_code] => 0
[header_size] => 0
[request_size] => 0
[filetime] => -1
[ssl_verify_result] => 0
[redirect_count] => 0
[total_time] => 0.203
[namelookup_time] => 0
[connect_time] => 0.203
[pretransfer_time] => 0.203
[size_upload] => 0
[size_download] => 0
[speed_download] => 0
[speed_upload] => 0
[download_content_length] => -1
[upload_content_length] => -1
[starttransfer_time] => 0
[redirect_time] => 0
)
有人可以指出我的錯誤嗎? 提前致謝。
確保在服務器端啟用了文件上傳,並按照PHP SDK文檔頁面上的說明將fileUpload
設置為true
來初始化SDK,或調用setFileUploadSupport
。 您不需要像上面一樣手動使用訪問令牌和curl
命令手動調用graph API,PHP SDK會為您解決這一問題。 有關完整示例,請參見api
方法文檔頁面。
查看facebook的howto: http : //developers.facebook.com/blog/post/498/
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.