无需用户权限即可上传到特定粉丝页面相册

时间:2011-10-20 13:24:29

标签: facebook photo facebook-page

我正在尝试复制其他人在此页面上已经实现的相同功能: http://www.facebook.com/PowerPhotoUploader?sk=app_152884604799537 我并不担心像fangate这样的强迫部分,可以做到没有问题。 我需要实现这一点,而不是以与他们相同的方式请求任何用户权限

我已经接近了,但还不是很正确。 已在此页面上创建了测试相册:http://www.facebook.com/pages/Demo-Album-Upload/227979503931257?sk=app_153866511376478

我的代码是上传我指定的图片,但它忽略了我输入的相册ID,而是上传到我自己个人资料中的相册。

到目前为止,

代码是:

<?php
$app_id = "XXXXXXXXXXX";
$app_secret = "XXXXXXXXXXXX";
require 'facebook.php';
$facebook = new Facebook(array( 'appId' => $app_id, 'secret' => $app_secret, 'cookie' => true, 'fileUpload' => true,));
$signed_request = $facebook->getSignedRequest();
//print_r ($signed_request);
$page_id         = $signed_request["page"]["id"];
//Upload To Page Album 
$facebook->setFileUploadSupport(true);
$album_id ='59125';  
$file_path  ='image2.gif';
$args = array('message' => 'Photo Caption');
$args['image'] = '@' . realpath($file_path);
$data = $facebook->api('/'.$album_id.'/photos', 'post', $args);
print_r($data);
?>

已经阅读了很多论坛资料,设置了filuploadsupport,将文件上传设置为true,但到目前为止我能找到的大部分信息都要求perms&amp;访问令牌,但上面的示例已经成功实现 - 任何想法?

问候托尼

1 个答案:

答案 0 :(得分:0)

这里的技巧是你只需要一个访问令牌,而不是每个用户的新访问令牌。这个想法是用户没有发布到页面,而是发布到页面,因此您不需要来自用户的访问令牌。但是,由于这是对Facebook的安全调用,因此您仍需要提供能够发布到页面的访问令牌。

获取可以使用的访问令牌的最简单途径是手动为应用程序提供您帐户的manage_pages和offline_access权限。然后只需获取您帐户的访问令牌,并将其用于所有通话。