【问题标题】:How to add Facebook App's accessToken to GraphRequest.newGraphPathRequest method? [duplicate]如何将 Facebook App 的 accessToken 添加到 GraphRequest.newGraphPathRequest 方法? [复制]
【发布时间】:2017-06-09 12:09:56
【问题描述】:

我从Facebook Graph Api console 复制了以下代码。但是,Android Studio 无法识别accessToken

我已经创建了一个Facebook App,并得到了它的acesstoken。但我不知道在代码中的何处添加它。如果我只是复制和粘贴。 It shows this error

如果我使用AccessToken.getCurrentAccessToken() 方法,它会显示这个错误:

errorMessage:请求此资源需要访问令牌

这是我的代码:

GraphRequest request = GraphRequest.newGraphPathRequest(
               accessToken,
                "/ibm/events",
                new GraphRequest.Callback() {
                    @Override
                    public void onCompleted(GraphResponse response) {

                        Log.d(TAG, "onCompleted: " + response.toString());
                    }});

Bundle parameters = new Bundle();
        parameters.putString("fields", "name,cover,start_time,end_time,place,description");
        parameters.putString("limit", "3");
        request.setParameters(parameters);
        request.executeAsync();

    }

【问题讨论】:

  • AccessToken 是您使用 facebook 登录应用后获得的令牌字符串。您需要将令牌传递给此方法。
  • @AmadYus,感谢您的评论。如果我已经拥有 Facebook 应用访问令牌,您知道该怎么做吗?我创建了一个 facebook 应用程序,因此我不需要使用登录。但我不知道如何以及在何处添加从该应用程序获得的 accessToken。
  • 您的应用中是否有“使用 facebook 登录”之类的功能? AccessToken 是您使用 facebook api 登录后获得的令牌,而不是您从 facebook 开发者控制台获得的令牌。对于如何使用该令牌的问题,您只需将访问令牌(在您的情况下为无法识别的 accessToken)替换为您获得的令牌。

标签: android facebook facebook-graph-api facebook-android-sdk facebook-access-token


【解决方案1】:

首先:

使用我在下面编写的这些简单步骤制作 Facebook 应用程序:

  1. 转到“开发人员”选项卡并单击它。
  2. 然后转到网站选项。
  3. 输入您想要的应用名称。
  4. 单击创建 Facebook 应用程序。 在此之后您必须选择类别,您可以选择 App for Pages。 您的 AppId 和 Appkey 是自动创建的。 AppSecretKey 被混淆了。您可以点击显示按钮查看您的 AppId 和 AppSecurityKey。

然后Check this link to generate access token

1.将您的 App ID 和您的 App Secret 复制并粘贴到下面的生成器中。您可以通过单击应用程序主菜单选项,然后选择您新创建的应用程序来获取您的应用程序 ID 和应用程序密码。

  1. 接下来单击“工具”菜单,然后选择“图形 API 资源管理器”。 第 1 页 在此页面上,您将单击 Graph API Explorer 选择选项。

  2. 然后从列表中选择您的应用程序。在此示例中,我们将使用自定义 Feed。

  3. 现在您单击获取访问令牌。这将显示一个选择权限弹出窗口,如下所示。

  4. 下一步单击扩展权限菜单选项并单击复选框 read_stream 并单击获取访问令牌。如果您使用我们的插件在 facebook 上显示页面,请勿检查 read_stream。

6.然后点击确定按钮继续。

在 Android 中获取事件:您必须下载 Android facebook sdk 并在此方法中将访问令牌放在那里 getCurrentAccessToken()。

/* make the API call */
new GraphRequest(
    AccessToken.getCurrentAccessToken(),
    "/{event-id}",
    null,
    HttpMethod.GET,
    new GraphRequest.Callback() {
        public void onCompleted(GraphResponse response) {
            /* handle the result */
        }
    }
).executeAsync();

Event Details

【讨论】:

  • 感谢您的回复。我刚刚制作了 Facebook 应用程序,现在我有了 accessToken。我需要将 accessToken 添加到我上面的代码中以使其工作吗?如何以及在哪里添加它?
  • 是的,您必须使用该访问令牌检查 facebook 开发者网站才能使用访问令牌。
  • 如果对您有帮助,请接受答案。
  • 请帮帮我。我一直在寻找 6 个小时来了解如何添加 accessToken。我只需要这一步:-(。你能给我一个链接吗?
  • 你想使用facebook api的目的是什么。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2022-09-27
  • 1970-01-01
  • 2016-02-03
  • 2011-10-08
  • 2018-08-29
  • 1970-01-01
  • 2022-06-28
相关资源
最近更新 更多