在不使用PHP-SDK的情况下发布到Facebook墙?

时间:2011-08-19 15:57:17

标签: facebook-graph-api

我不想将SDK添加到我的项目中,但我想将消息发布到FB Page(公共页面,而不是/ 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,或者另一个params?

2 个答案:

答案 0 :(得分:0)

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

如果只是这个网址,你可以让它更简单:

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/

答案 1 :(得分:0)

我想知道的是:

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