我能否使用Facebook API设置用户的个人资料图片?

25

我正在寻找在Facebook API上调用user.setImage或类似功能的方法,以覆盖用户的个人资料图片(不仅仅是在他们的墙上发布一张图片)。

我在文档中没有看到相关内容。您是否知道是否可能实现这一点?如果是这样,请提供有关如何实现的文档。


1
这是一个重复的问题,已经被 Fredrik 回答过了。原问题为 如何使用Graph API设置Facebook个人资料图片 - Owen Blacker
我知道这是一个老问题,但如果您能标记为已回答,那将不胜感激。谢谢! - Hannes
可能是如何使用Graph API设置Facebook个人资料图片的重复问题。 - fredrik
6个回答

41

您可以将用户重定向到以下链接,其中 [PID] 代表所需图片的 ID:

http://www.facebook.com/photo.php?fbid=[PID]&makeprofile=1

用户在此页面将看到一张图片,并立即收到一个对话框,询问是否要将其设置为他的个人资料图片。


1
非常好的答案!!!我现在有两个问题:有没有可能避免切割过程(另一个参数?),并且你有标题图片粉丝页面的链接吗? - Joergi
2
据我所知,没有办法跳过切割过程。您应该能够更改页面的封面照片,只需查看文档http://developers.facebook.com/docs/reference/api/page/(搜索“设置封面照片”)-不过我没有尝试过。 - Hannes
2
但如果从移动设备打开,则无法正常工作... 裁剪和设置为个人资料图片按钮根本不会显示,就好像忽略了makeprofile = 1参数。 - Zennichimaro
这个大约一个月前对我来说是可以工作的,但现在看起来不再有效。或许他们改变了一些东西。 - DAB

13

不行,你不能这样做。

根据photos.Upload文档:

然而,你无法上传到用户的个人资料图片相册。


5

如果问题是重复的,您应该在评论部分添加到原始链接。 - Evan Kroske
好的,明白了!下次会这样做的! - fredrik

3

因为iPhone上的Facebook应用程序可以实现此功能,所以必须存在隐藏的API。也许您可以通过在iPhone和Facebook之间设置代理并解密来发现如何实现此功能...或者该API可能仅限于Facebook自己的应用程序...


6
iPhone 应用程序通过用户的电子邮件和密码进行身份验证,而不是通过 Graph API 进行身份验证。 - ndbroadbent
我希望用于登录的API是加密的,所以你的代理作用不大,我认为。 - Alexis Wilke

1

1
你可以上传一张图片,但是不能将其设置为个人资料照片。所以,用户必须自己将其设置为个人资料照片。您需要将他们重定向到上传的图像的永久链接。

https://dev59.com/yXI-5IYBdhLWcg3w1sTi#6309984已经说过这个了,不是吗? - rokejulianlockhart

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接