【问题标题】:Facebook Graph post image to pageFacebook Graph 将图像发布到页面
【发布时间】:2013-04-10 19:47:11
【问题描述】:

我可以通过将图片发布到https://graph.facebook.com/me/photos 成功地将图片上传到我自己的墙上。现在我需要发布到页面的墙上。我有页面 ID,但是当我将 url 中的“我”更改为页面 ID 时,图像仍然发布到我自己的墙上而不是页面上。如何将图片发布到页面的流中?

这样做需要哪些权限?

如果你们能帮助我,那就太好了,我已经被困在这个问题上了。谢谢!

【问题讨论】:

    标签: facebook facebook-graph-api


    【解决方案1】:

    你不能上传图片到墙上(它正在上传到相册)。

    要将图片上传到页面的相册,您需要使用页面access_token,该页面可通过useraccounts 连接访问(您需要manage_pages 权限才能获取此信息)。

    一旦您拥有access_token 页面,您就可以使用与用户相同的方式使用upload picture,但使用页面ID 而不是用户ID(您需要publish_stream 权限,用户才能发布他拥有的内容页面) .

    【讨论】:

    • 但不是页面管理员的普通用户无法将图像上传到相册。至少他们不能在 Facebook 上这样做,你的意思是可以使用 Graph API 吗?
    • 我可以将图像分享到页面墙,这一定可以通过 Graph-API 实现,对吧?
    • 不行,不是页面管理员的普通用户不能上传照片到相册。是的,普通用户可以通过 Graph API 在页面墙上共享图像(使用pagefeed 连接并创建postlink)这将看起来与上传到相册的照片不同。这是完全不同的问题,Stack Overflow 已经回答。
    【解决方案2】:

    m_imgData = [NSData dataWithContentsOfFile:[[NSBundle mainBundle] pathForAuxiliaryExecutable:@"Default.png"]];

    NSMutableDictionary *fbArguments = [[[NSMutableDictionary alloc] init] autorelease];
    
    [fbArguments setObject:self.m_imgData forKey:@"source"];
    [fbArguments setObject:@"Uploading images" forKey:@"message"];
    
    
    [m_facebook requestWithGraphPath:@"Page_ID/photos"
                           andParams:fbArguments
                       andHttpMethod:@"POST"
                         andDelegate:self];
    

    我在哪里使用 Default.png 作为要上传的图像。 m_facebook 是 Facebook 类的分配对象(作为 Facebook SDK 的一部分提供)。 m_imageData 是 NSData 的对象。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-12-15
      • 1970-01-01
      • 1970-01-01
      • 2022-01-19
      • 2016-01-30
      • 1970-01-01
      • 2019-09-21
      • 1970-01-01
      相关资源
      最近更新 更多