首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >创建facebook apprequests

创建facebook apprequests
EN

Stack Overflow用户
提问于 2012-01-14 21:50:00
回答 3查看 11.6K关注 0票数 4

当特定事件发生时,我尝试从应用程序向用户发送消息。现在我有这个代码

代码语言:javascript
复制
$param = array(
   'message'      => 'XYZ shared a file with you',
   'data'         => 'additiona_string_data',
   'access_token' => $facebook->getAccessToken(),
);
$tmp = $facebook->api("/$uid/apprequests", "POST", $param);

但我总是得到Uncaught OAuthException: (#2) Failed to create any app request thrown

我不知道问题出在哪里。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-01-14 22:18:36

您应该阅读请求文档。

在中有关于两种不同类型的请求的解释。

使用生成的request dialog )

)启动

  • 用户

您需要的是app generated requests,这意味着您将需要应用程序访问令牌,而不是用户。

我假设您使用的是用户访问令牌,因为您没有在代码示例中包含facebook对象的初始化,并且可能已经验证了用户,因此getAccessToken()调用将返回用户访问令牌,而不是应用程序访问令牌。

票数 8
EN

Stack Overflow用户

发布于 2012-01-14 23:45:27

我对“当特定事件发生时,我正在尝试从应用程序向用户发送消息。现在我有这个代码”的意思感到有点困惑。

  1. 当有人在他们的墙上发帖时向用户发送电子邮件
  2. 向用户发送事件邀请
  3. 向用户发送应用程序邀请
  4. 在用户墙上写东西时发生类似于“XYZ与您共享文件”之类的事情。

回答

  1. 您需要用户的emailread_stream权限。使用RealTime更新监控他的墙壁,然后使用您的服务器SMTP发送电子邮件给他。
  2. 参阅http://developers.facebook.com/docs/reference/api/event/#invited了解如何创建活动邀请
  3. 正如@Lix所指出的,参见https://developers.facebook.com/docs/channels/#requests
  4. You应该使用新的打开图形对象/操作完成此操作。请参阅此示例:https://developers.facebook.com/docs/beta/opengraph/tutorial/
票数 1
EN

Stack Overflow用户

发布于 2014-02-04 13:50:14

您可以通过以下方式接收Facebook应用程序访问令牌:

代码语言:javascript
复制
https://graph.facebook.com/oauth/access_token?client_id=FB_APP_ID&client_secret=FB_APP_SECRET&grant_type=client_credentials

使用Facebook PHP SDK发布应用程序到用户请求的工作代码示例(在需要的地方添加错误处理):

代码语言:javascript
复制
$facebook = new Facebook(array(
  'appId'  => FB_APP_ID,
  'secret' => FB_APP_SECRET,
));

$token_url = "https://graph.facebook.com/oauth/access_token?" ."client_id=" . 
   FB_APP_ID ."&client_secret=" . FB_APP_SECRET ."&grant_type=client_credentials";

$result = file_get_contents($token_url);
$splt = explode('=', $result);
$app_access_token =$splt[1];

$facebook->setAccessToken($app_access_token);

$args = array(
    'message' => 'MESSAGE_TEXT',

);
$result = $facebook->api('/USER_ID/apprequests','POST', $args);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8862621

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档