Facebook API/PHP - 是不是可以通过 FB Graph API 更改用户的个人资料图片?
Posted
技术标签:
【中文标题】Facebook API/PHP - 是不是可以通过 FB Graph API 更改用户的个人资料图片?【英文标题】:Facebook API/PHP - Is it possible to change a user's profile image via FB Graph API?Facebook API/PHP - 是否可以通过 FB Graph API 更改用户的个人资料图片? 【发布时间】:2011-05-21 05:13:40 【问题描述】:是否可以通过图形 API 设置/更改用户的 Facebook 个人资料图片?
我找不到特定的 API 方法,但可以将图像上传到用户的相册 (http://developers.facebook.com/docs/reference/api/photo)。我可以将用户的个人资料图片设置为上传到他们相册的图片吗?
编辑: 针对 REST API 提出的相同问题Can I set a users profile image using the Facebook API?
【问题讨论】:
Can I set a users profile image using the Facebook API? 的可能副本 @Ajreal 我在发布之前发现了这个问题,但它只有一个响应,并且自发布以来有许多 api 更改/添加。 【参考方案1】:不,这是来自 facebook 的一个人的评论:
The Original Link - 你必须按下 show cmets
【讨论】:
【参考方案2】:我们可以通过 API 将用户的照片上传到 Facebook,然后将用户重定向到上传的照片 URL,并将 makeprofile=1
添加到查询字符串列表中:
facebook.com/photo.php?pid=xyz&id=abc&makeprofile=1
查看Auto Change Facebook Profile Picture 获取 PHP 示例和演示。
【讨论】:
不再起作用,ggtsu 的回答(下)正在起作用。【参考方案3】:目前可以通过将用户重定向到移动配置文件图片更改网址https://m.facebook.com/photo.php?fbid=[fb photo id]&prof&ls=your_photo_permalink
以前的解决方法,使用facebook.com/photo.php?pid=[fb photo id]&makeprofile=1
url 不再有效。
【讨论】:
你应该用什么替换 your_photo_permalink 吗?如果有,是什么? 没有马泰奥。只有https://m.facebook.com/photo.php?fbid=[fb photo id]&prof=1
可以做到这一点【参考方案4】:
据我所知和经验:没有。
【讨论】:
【参考方案5】:在此处查看“发布”部分:http://developers.facebook.com/docs/reference/api/photo
需要
publish_stream
权限。要发布照片,请发送
POST
带照片文件附件的请求 作为multipart/form-data
。您可以将单张照片发布到 带有 POST 的用户配置文件
http://graph.facebook.com/PROFILE_ID/photos
我们会自动为 你的应用程序,如果它没有 已经存在。您的所有照片 应用程序将发布到 同一个自动创建的相册。您可以将照片发布到特定的、 带有 POST 的现有相册
http://graph.facebook.com/ALBUM_ID/photos
.
最后一句表明您可以发布到现有相册,因此如果您尝试更新用户的个人资料图片(不确定您提出问题的方式),请尝试获取用户的相册 ID,然后发布到那个。
【讨论】:
感谢马特,感谢您的帮助。我可以创建专辑。但是当我尝试在该专辑中添加图片时出现错误。(message": "(#324) 需要上传文件”)。我在用 C# 做。这是我的网络请求。https://graph.facebook.com/pageid/photos?access_token=application_access_token&method=post&message=waterfall&source=D:\Image\image1.jpg
。我知道请求应该分多个部分发出。我用代码编写。不是直接在网络请求中。
您不能只在 URL 中传递硬盘驱动器上的位置,服务器将不知道如何处理它。查看this Facebook blog post,它解释了如何通过 Graph API 上传照片。以上是关于Facebook API/PHP - 是不是可以通过 FB Graph API 更改用户的个人资料图片?的主要内容,如果未能解决你的问题,请参考以下文章
网站、API 和 iPhone App 让用户可以通过 Facebook 登录
从对象 Facebook API (PHP) 获取受保护的值
通过从我的数据库表中发送用户名和密码来登录 Facebook