【问题标题】:Posting to a Group page of which I am an admin....fails with (OAuthException) (#200) The user hasn't authorized the application to perform this action发布到我是管理员的组页面......失败并出现 (OAuthException) (#200) 用户尚未授权应用程序执行此操作
【发布时间】:2011-02-23 06:22:34
【问题描述】:

我可以在自己的墙上发帖,也可以从群组墙中提取信息 - 但我无法在群组墙(我是管理员)上发帖,我收到错误消息:

(OAuthException) (#200) 用户尚未授权应用程序执行此操作

我设置了所有正确的权限:

email、publish_stream、create_event、offline_access、publish_checkins、read_stream、sms、manage_pages

我可以将任何内容发布到我自己的墙上 - 但是当我尝试发布到群组墙上时,它失败了。

现在我在 developer.facebook.com 网站上看到一些提到 manage_groups 的内容,这显然是用于获得更精细的权限,但我不知道如何使用它并获得正确的令牌以发布到组(如果那确实是我出错的地方)。

任何指针?

问候

理查德

------------下面我的测试代码示例(在 vb 中使用 FB v5 C# Api)

    Dim fb = New FacebookOAuthClient()
    fb.ClientId = "XXXXXXXXXXXXXXXXXXXX"
    fb.ClientSecret = "XXXXXXXXXXXXXXXXXXXXXXXXXXX"
    Dim result = fb.GetApplicationAccessToken()

    Dim fbapp = New FacebookClient(result.access_token.ToString)

    Dim parameters As Object = New ExpandoObject()
    parameters.message = "Test Post"

    ' I can pull from the Group feed ok
    Console.Write(fbapp.Get("XXXXXXXXXXXXX"))

    ' But when I try and post...the error pops up.
    Console.Write(fbapp.Post("XXXXXXXXXXXXX/feed", parameters))

【问题讨论】:

    标签: facebook-c#-sdk


    【解决方案1】:

    您不能使用应用程序访问令牌来执行此操作。您必须使用用户的访问令牌。将您的代码更改为以下内容:

    Dim authorizer = New Authorizer();
    
    Dim fbapp = New FacebookClient(authorizer.Session.AccessToken)
    
    Dim parameters As Object = New ExpandoObject()
    parameters.message = "Test Post"
    
    ' I can pull from the Group feed ok
    Console.Write(fbapp.Get("XXXXXXXXXXXXX"))
    
    ' But when I try and post...the error pops up.
    Console.Write(fbapp.Post("XXXXXXXXXXXXX/feed", parameters))
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-05-08
      • 1970-01-01
      • 2015-07-12
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多