gpt4 book ai didi

java - restfb:使用 java 编写 facebook 应用程序(使用新的图形 api)

转载 作者:行者123 更新时间:2023-11-30 06:36:02 26 4
gpt4 key购买 nike

我正在尝试使用带有 RestFB 的 Java tomcat 编写一个 facebook 应用程序。

restfb 文档显示以下内容:

我认为我可能看错了说明,这是用于 facebook 连接或除 apps.facebook.com/app_name 中的实际 facebook 应用程序之外的任何其他内容。

如果能提供有关此问题的任何相关信息,我将不胜感激。我只是想创建一个简单的 facebook 应用程序来打印用户名。

通常在获取用户的访问 token 后,我可以执行以下操作:

FacebookClient facebookClient = new DefaultFacebookClient(MY_ACCESS_TOKEN);
User user = facebookClient.fetchObject("me", User.class);
out.println("User name: " + user.getName());

我的问题是如何正确获取用户的访问 token ?在我在帖子顶部显示的信息中,它表明我需要提出 2 个请求。第一个用于代码,另一个用于访问 token 。并且访问 token 的请求实际上向用户揭示了我的应用 key ,因为每次我将他转发到不同的页面时,用户都可以轻松查看获取和设置参数。

所以我想我在这里很迷路。

请帮忙! :)

谢谢

评论后更新

根据这些说明,我需要两次重定向用户页面。首先获取代码,然后获取访问 token 。用户可以看到这两个重定向,因此他可以很容易地从 get 参数中看到 facebook 应用程序 key 和 key 。我如何确保这些步骤对用户 Conceal ?

最佳答案

如评论中所述,这些是访问 Facebook 图形 API 所需执行的步骤。但是,要回答你的第二个问题:

"How do I make sure that these steps are hidden from the user?"

只有第一个请求应该由用户的浏览器执行。目的是 Facebook 希望确保它是为用户的 Facebook 身份提供的唯一授权。根据您编写的应用程序,您可以使用重定向 URL 指向您指定的默认重定向 URL,或者在您的网站上指定一个自定义 URL,您将使用它来检索 token 。第一种方法通常由独立应用程序使用,例如可以控制浏览器如何处理重定向的移动设备。第二种方法将用于自定义的基于 Web 的应用程序。收到访问 token 后,您将在代码中执行第二个操作(使用您最喜欢的 http api),而不是通过浏览器。 access_token url 上的重定向与 authentication-url 上指定的重定向 url 进行比较。 Facebook 仅将其用于验证,不会在请求成功完成时执行实际的重定向。

以下是高级步骤:

  1. 将用户的浏览器重定向到指定适当的 redirect_uri 的身份验证 url
  2. 从重定向的浏览器请求中检索验证 token
  3. 使用您首选的 HTTP 框架执行 access_token 检索(无需用户输入)
  4. 解析结果并检索访问 token
  5. 使用 token 初始化 restfb 并根据需要使用

关于java - restfb:使用 java 编写 facebook 应用程序(使用新的图形 api),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5248484/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com