【问题标题】:Post to Facebook wall without using PHP-SDK?在不使用 PHP-SDK 的情况下发布到 Facebook 墙上?
【发布时间】:2011-10-30 18:08:33
【问题描述】:

我不想将 SDK 添加到我的项目中,但我想将消息发布到 FB 页面(公共页面,而不是 /me)。 据我了解,我需要这样做 smt

curl -F 'access_token=...' \
     -F 'message=Check out this funny article' \
     -F 'link=http://www.example.com/article.html' \
     -F 'picture=http://www.example.com/article-thumbnail.jpg' \
     -F 'name=Article Title' \
     -F 'caption=Caption for the link' \
     -F 'description=Longer description of the link' \
     -F 'actions={"name": "View on Zombo", "link": "http://www.zombo.com"} \
     -F 'privacy={"value": "ALL_FRIENDS"} \
     https://graph.facebook.com/me/feed

我如何获得访问令牌密钥? 当我使用来自请求https://graph.facebook.com/oauth/access_token?grant_type=client_credentials&client_id=xxx&client_secret=yyy 的令牌时,它说它的令牌只能用于客户端信息(client_credintials)。 我需要另一个 grant_type 或另一个参数?

【问题讨论】:

    标签: facebook-graph-api


    【解决方案1】:

    对于您的版本,您需要获得用户的 publish_stream 权限,只有在您请求 perm 时才有效。所以你需要 js SDK 或 php(或任何其他服务器端)SDK

    如果你只是访问这个 url,你可以让它变得更简单:

    http://www.facebook.com/dialog/feed?
      app_id=123050457758183&
      link=http://developers.facebook.com/docs/reference/dialogs/&
      picture=http://fbrell.com/f8.jpg&
      name=Facebook%20Dialogs&
      caption=Reference%20Documentation&
      description=Dialogs%20provide%20a%20simple,%20consistent%20interface%20for%20applications%20to%20interact%20with%20users.&
      message=Facebook%20Dialogs%20are%20so%20easy!&
      redirect_uri=http://www.example.com/response
    

    有关更多示例,请参阅 https://developers.facebook.com/docs/reference/dialogs/feed/http://developers.facebook.com/docs/reference/javascript/FB.ui/

    【讨论】:

    • 但我认为这就是我使用访问令牌的原因。在我们的“类似facebook”的社交网络中,我只为我的应用获得令牌(一次),然后用它来发布消息。
    • 或者你想以“你的”名字发帖到 facebook。就像来自 CMS 的 autocrossposts。这会起作用,但你需要一个 sdk。 (你“可以”在没有工作的情况下做到这一点)
    • 是的,以“我”的名义,但不是为了我的墙。正如我所说,我不想使用 SDK(我看到的无用代码)。
    • 好的,阅读developers.facebook.com/docs/authentication 很有趣,您需要创建一个应用程序,获取一个应用程序访问令牌,您的用户将需要相应的权限。之后,您无需登录即可发布到您的用户墙、您是管理员的粉丝页面(以及您的朋友 afaik 的墙)。但这里有很多需要回答的地方。
    【解决方案2】:

    我只想知道:

    1) 在对话框中验证应用程序:

    https://www.facebook.com/dialog/oauth?client_id=xxx&scope=publish_stream,offline_access&redirect_uri=http://site.com
    

    2) 获取“永久”访问令牌:

    https://graph.facebook.com/oauth/access_token?client_id=xxx&client_secret=yyy&code=zzz&redirect_uri=http://site.com
    

    3) 贴到墙上:

    https://graph.facebook.com/me/feed?access_token=aaa&message=msg
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-12-02
      • 2011-11-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多