使用facebook API的stream.publish方法时获取权限错误

时间:2009-11-10 06:28:11

标签: java facebook

您好我想发布用户墙上的帖子但是在尝试使用facebook api的stream.publish方法时遇到此“权限错误”错误代码200 ...我已请求扩展权限:

http://m.facebook.com/login.php?api_key=“+ API_KEY&安培; ....&安培; req_perms = read_stream,publish_stream,offline_access

但是当我调用方法stream.publish时,我收到此权限错误..似乎上面的url中的req_perms只是被忽略了.. 我将“method(stream.publish)”,“api_key”,“message”,“session_key”,“v”,“sig”作为参数传递给网址http://api.facebook.com/restserver.php

如果有人帮助解决这个问题或者为我提供在用户墙上发布帖子的正确步骤,那将是非常棒的...应用程序正在blackbery平台上开发..

2 个答案:

答案 0 :(得分:1)

在尝试stream.publish之前,你能检查一下你是否从facebook获得了有效的会话吗?如果您获得了offline_access扩展权限,则会有一个expires = 0的会话对象。

您也可以尝试调用users.hasAppPermission API方法来验证您是否获得了权限。

您是否只是直接向http://api.facebook.com/restserver.php发送帖子?您是否在POST正文中包含请求数据?您还应该在标题中包含application / x-www-form-urlencoded的Content-Type:标题。

我认为直接调用restserver.php会很棘手。是否有可以使用的客户端库,如Javascript客户端库?

答案 1 :(得分:1)

我认为您无法从login.php请求权限。请查看prompt_permissions.php

http://wiki.developers.facebook.com/index.php/Authorization_and_Authentication_for_Desktop_Applications