Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/postgresql/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Facebook graph api 图形API和动态访问令牌_Facebook Graph Api_Access Token_Facebook Access Token - Fatal编程技术网

Facebook graph api 图形API和动态访问令牌

Facebook graph api 图形API和动态访问令牌,facebook-graph-api,access-token,facebook-access-token,Facebook Graph Api,Access Token,Facebook Access Token,所以基本上我在制作一个应用程序,我需要在其中嵌入一个自定义的facebook墙源。我只是想要一个JSONP响应。。。仅此而已 通过几天对access token的e.c.t.的阅读,我得出结论,如果没有有效的access token,就无法使用graph API,但是我不想要求用户登录(目标平台无法轻松输入字符,加上id必须创建自定义弹出键盘和交互) 所以我找到的唯一选择就是使用我在facebook上安装的应用程序的访问令牌。但是,我不想分发应用程序机密,所以我可以使用我见过的app_ID |

所以基本上我在制作一个应用程序,我需要在其中嵌入一个自定义的facebook墙源。我只是想要一个JSONP响应。。。仅此而已

通过几天对access token的e.c.t.的阅读,我得出结论,如果没有有效的access token,就无法使用graph API,但是我不想要求用户登录(目标平台无法轻松输入字符,加上id必须创建自定义弹出键盘和交互)

所以我找到的唯一选择就是使用我在facebook上安装的应用程序的访问令牌。但是,我不想分发应用程序机密,所以我可以使用我见过的
app_ID | app_secret
方法(不管它是什么),因为我认为这意味着不好的事情

因此,我的想法是,在服务器上创建一个代理脚本,该脚本将保存应用程序机密e.c.t。该脚本将向FB请求访问令牌,并将其传递回我的应用程序,以便我的应用程序可以获取墙提要,并继续使用该令牌刷新提要

如果我打开我的应用程序并获得访问令牌,那么另一个人打开我的应用程序并获得访问令牌,我的访问令牌会随着新令牌的生成而过期吗?或者,您可以为同一个应用程序生成任意数量的访问令牌吗

或者有人能想出更好的办法吗

工作流

  • 用户在设备上打开应用程序(该设备是一个定制的内置单元,可以想象一个简单100倍的树莓圆周率,并插入电视)
  • 该应用程序在页面上的区域中加载了大量提要,这些提要包括来自特定个人资料的facebook墙提要
  • 该应用程序将无人值守运行数天/数周/数月,并定期刷新信息源
  • FB访问令牌工作流

    由于用户无法登录,我需要提供一个访问令牌。为了安全起见,我不想泄露我的应用程序机密。因此,我的想法是使用托管在服务器上的php代理脚本来获取访问令牌。像这样:

  • 在第一次加载应用程序时,运行一个函数,该函数对请求令牌的php代理脚本进行ajax调用
  • 我的代理脚本将使用我的应用id和密码向facebook发出请求,并从FB获得访问令牌
  • 然后,我的代理脚本将把访问令牌作为jsonp响应转储回应用程序
  • 应用程序将从jsonp响应中获取访问令牌,并将其存储
  • 该应用程序将使用检索到的和存储的令牌来处理facebook graph api的所有墙提要请求
  • 如果应用程序检测到它的令牌由于某种原因无法工作,它将尝试从我的令牌代理脚本中获取一个新的令牌
  • 这就是我的想法,即如何使用令牌代理脚本向每个人提供访问令牌,而不泄露信息,如果有人查看应用程序源代码(这一点都不困难),就会产生问题。然而,如果每次你请求新的代币时facebook都会删除旧的代币,这就行不通了。因此,这是当前的问题


    然而,如果有更好的方法来解决这个问题,我的耳朵是敞开的。谢谢

    我不确定您是否可以使用应用程序访问令牌执行您想要的操作

    1) 应用访问令牌无法访问用户有权访问的所有内容,也无法访问您可以使用用户访问令牌访问的内容。比如,一些年龄限制的页面,等等

    2) 引用文件:

    请注意,应用程序访问令牌用于 发布\u操作和发布\u流权限。你将无法胜任 检索有关具有给定ID的状态更新帖子的信息 使用应用访问令牌。相反,您应该使用用户访问 用于这种目的的代币

    3) 使用app access_令牌的检索能力限于:

    a.Basic Profile Info of a User (ID, Name, Username, Gender).
    
    b.A User’s Friends and their IDs.
    
    c.Permissions granted by the User to your App(probably includes email, etc etc.)
    
    所以,我不确定它是否能满足你的需求。但是,如果您可以让用户先登录,并让用户每60天进行一次身份验证(他不需要登录),则可以使用扩展用户访问令牌。

    如果你走那条路,这会有帮助的。我回答的另一个问题是处理一份工作。阅读:


    希望这对你的问题有所帮助,或者我的意思是你解释问题的方式似乎有点复杂。你能告诉我工作流程吗?比如,1。用户访问您的站点。2.胡说八道。某某。@Kishor:我添加了一些关于应用程序流程和提议的令牌获取想法的额外信息。希望这有助于澄清问题?