我想在 Android 上使用 Facebook SDK 使用 Open Graph API 发送 Like 状态。此处描述:https
://developers.facebook.com/docs/opengraph/actions/builtin/likes/从 SDK 我使用 SSO 获得了 access_token(具有 publish_actions 权限)。我已经在 Facebook Dev Account 上注册了我的应用程序,所以我有我的 app_id。
现在我想使用 Open Graph API 在我的墙上发送 Like 状态。所以我用 HttpURLConnection 和 setRequestMethod 用 access_token、app_id 和对象头(使用 setRequestProperty())调用https://graph.facebook.com/MY_USER_ID/og.likes到 POST。
HttpURLConnection conn;
conn.setRequestMethod("POST");
conn.setDoOutput(true);
conn.setRequestProperty("object", "someURL");
conn.setRequestProperty("app_id", "myID");
conn.setRequestProperty("access_token", "myToken");
conn.setRequestProperty("Content-Length", "" + postMessageInBytes.length);
我总是得到响应 400 Bad Request
{"error":{"message":"An access token is required to request this resource.","type":"OAuthException","code":104}}
当我使用 Graph API Explorer (developers.facebook.com/tools/explorer/) 时,一切正常,访问令牌没有问题。
当我调试我的访问令牌时,一切看起来都很好(从另一种语言翻译):
ID app: my app ID/name
ID user: user which I used to login
Issued: 1348929549 (yesterday)
Valid until: 1354113549 (in about 2 months)
Valid: True
Origin: Mobile Web Faceweb
Permission: publish_actions user_status
所以问题是,访问令牌的问题在哪里?
感谢帮助!