代表用户在用户的时间轴上发布

时间:2012-11-21 12:45:49

标签: facebook api facebook-graph-api

我在Facebook上创建了APP。

现在我正在尝试使用Graph API在用户的时间轴上发表评论,但我无法理解我需要做的事情。

我已授权应用程序(我授权此权限:'user_status,publish_stream,user_photos,email')。

如果我查看我的个人资料 - >隐私我可以看到APP可以:

This app can: Post on your behalf
This app may post on your behalf, including status updates, photos and more.

Last data access:   
Basic InformationToday
See details · Learn more
Posts on your behalf:   
Who can see posts this app makes for you on your Facebook timeline? 
Public
Notifications:  
When to notify you? 
The app sends you a notification

所以这部分似乎没问题。

在我的应用程序中,我会执行以下操作以尝试在我的时间轴上发布somenthing(我需要在离线时发布)。

1)获取: https://graph.facebook.com/oauth/access_token?client_id= APPID & client_secret = * APP_SECRET *& grant_type = client_credentials

响应:

access_token = 422828347771671|UdQELQIf0N7krF4JUo7VwtPLTkk

2)获取: https://graph.facebook.com/search?q= myemail & type = user

响应:

_"error":_{
______"message":_"A_user_access_token_is_required_to_request_this_resource_",
______"type":_"OAuthException",
______"code":_102
___}

但是阅读文档(https://developers.facebook.com/docs/reference/api/#searching)似乎这个请求不需要任何类型的访问令牌。

我还尝试添加访问令牌,但结果仍然相同。

3)我知道我的facebookid,所以我试着直接使用它:

POST: https://graph.facebook.com/100001139132403/feed

ARGUMENT:

=的access_token 422828347771671 | UdQELQIf0N7krF4JUo7VwtPLTkk,

消息=你好

响应:

   "error": {
      "message": "(#200) This API call requires a valid app_id.",
      "type": "OAuthException",
      "code": 200
   }
}

所以我尝试添加 client_id = APPID app_id = APPID ,我尝试将其中一个,另一个以及两个参数都作为GET或POST但没有改变。

我检查了APPId广告是否正确。

有人有任何想法吗?

谢谢!

1 个答案:

答案 0 :(得分:0)

您无法通过查询到URL来生成用户access_token。你做了什么给了App访问令牌,正如错误所说,你正在尝试做一些需要用户access_token的事情。

请参阅并执行此操作:https://developers.facebook.com/docs/howtos/login/server-side-login/

并将access_token用于其余进程。